数据库连接池使用异常

数据库连接池使用异常,第1张

5月 25, 2020 9:29:14 上午 com.mchange.v2.resourcepool.BasicResourcePool AcquireTask@359868cd -- Acquisition Attempt Failed!!! Clearing pending acquires. While trying to acquire a needed new resource, we failed to succeed more than the maximum number of allowed acquisition attempts (30). Last acquisition attempt exception:

java.sql.SQLException: Unknown system variable 'tx_isolation'

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)

at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3491)

at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3423)

at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1936)

at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2060)

at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2536)

at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2465)

at com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1383)

at com.mysql.jdbc.ConnectionImpl.getTransactionIsolation(ConnectionImpl.java:3117)

at com.mchange.v2.c3p0.impl.NewPooledConnection.<init>(NewPooledConnection.java:107)

at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:198)

at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)

原因:mysql-connector-java的版本太低,之前使用的是5.1.6,报该错误,修改为:8.0.13之后不报错

注意:idea中External Libraries需要将原来版本的mysql-connector-java删除

能不能别只是标题啊,你要求教什么东西明确点!

还得回答!

练级池满!

第一个要查,你的代码是不是合理:

第一项,要查是不是连接都会被关闭!比如忘记close

第二项要查连接是不是会关闭,比如 下面代码就是有问题的。

try

{

if (null != recordset)

recordset.close()

if (null != statments)

statments.close()

if (null != connection)

connection.close()

} 。。。。。。。

如果 record 关闭出异常了,那么 statments \connection 都不会关闭,因为代码没有执行到,在record那个部分就跳出去了。

第二个要看你数据库端,看看数据库的连接是否都被收回。

第三个要看你的事务和并发,长事务,高并发是会出现连接池供不应求的。

你要问的是不是jdbc连接池总是满的怎么解决?解决方法如下:

1、扩大链接池数量,治标不治本。

2、检查程序,使用完的链接要关闭。

jdbc是java语言提供的一套访问关系数据的接口。关系数据不仅仅是关系型数据库,也可以是一些关系型文件,只要相应的数据源提供实现jdbc接口的驱动。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9956012.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存