1. 程式人生 > 其它 >C3P0連線mysql8.0存在的問題?

C3P0連線mysql8.0存在的問題?

技術標籤:隨筆mysqljavajdbc

一、環境介紹:
在這裡插入圖片描述
二、問題描述:

警告: [email protected]e0 -- 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: No suitable driver
	at java.sql.DriverManager.getDriver(DriverManager.java:315)
	at com.mchange.v2.c3p0.DriverManagerDataSource.driver(DriverManagerDataSource.java:223)
	at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:119)
	at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:143)
	at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:132)
	at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
	at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
	at com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
	at com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
	at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)

分析:
mysql的驅動版本和mysql8.0版本可以匹配,但是c3p0版本太低,不匹配?

三、解決方案:
更新C3P0驅動,網址:

https://mvnrepository.com/artifact/com.mchange/c3p0

將新的驅動新增,並buildpath即可。
同時提供資料庫連線的XML配置檔案需要修改:

<property name="driverClass">com.mysql.cj.jdbc.Driver</property>
	    <property name="jdbcUrl">jdbc:mysql:///test?useSSL=false&amp;serverTimezone=UTC</property>
	    

四、測試執行:

[email protected]