封晴 發表於 2025-8-23 08:13

FATAL - 資料庫讀取錯誤!

FATAL - 資料庫讀取錯誤!
java.sql.SQLException: Connections could not be acquired from the underlying database!
      at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:106)
      at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:529)
      at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:128)
      at com.lineage.DatabaseFactory.<init>(DatabaseFactory.java:36)
      at com.lineage.DatabaseFactory.get(DatabaseFactory.java:59)
      at com.lineage.Server.main(Server.java:106)
Caused by: com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source.
      at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1319)
      at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:557)
      at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:477)
      at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:525)
      ... 4 more
八月 23, 2025 8:13:18 上午 com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask run
警告: com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@2502cf72 -- 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: Unable to load authentication plugin 'caching_sha2_password'.
      at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:934)
      at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:931)
      at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1738)
      at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1276)
      at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2395)
      at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2428)
      at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2213)
      at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:797)
      at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
      at sun.reflect.GeneratedConstructorAccessor9.newInstance(Unknown Source)
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
      at java.lang.reflect.Constructor.newInstance(Unknown Source)
      at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
      at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:389)
      at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305)
      at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
      at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
      at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
      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)

八月 23, 2025 8:13:48 上午 com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask run
警告: com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@563983f7 -- 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: Unable to load authentication plugin 'caching_sha2_password'.
      at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:934)
      at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:931)
      at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1738)
      at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1276)
      at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2395)
      at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2428)
      at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2213)
      at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:797)
      at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
      at sun.reflect.GeneratedConstructorAccessor9.newInstance(Unknown Source)
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
      at java.lang.reflect.Constructor.newInstance(Unknown Source)
      at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
      at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:389)
      at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305)
      at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
      at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
      at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
      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)

可以請問這是哪邊出了問題嗎,該如何解決,謝謝

brain1214 發表於 2025-8-23 08:30

JAVA太舊

封晴 發表於 2025-8-23 13:06

brain1214 發表於 2025-8-23 08:30
JAVA太舊

java8 461 更新顯示最新了

kyicvs 發表於 2025-8-24 07:30

核心錯誤訊息是:

java.sql.SQLException: Unable to load authentication plugin 'caching_sha2_password'.

為什麼會這樣?

你的伺服器程式用的是 舊版 MySQL Connector/J (JDBC Driver),它 不支援 MySQL 8 預設的認證方式:caching_sha2_password。

MySQL 8 開始,預設使用 caching_sha2_password,但舊 JDBC Driver 只能處理 mysql_native_password。

所以在伺服器啟動連線資料庫時,C3P0 拿不到連線,整個就爆掉了。

kyicvs 發表於 2025-8-24 07:31

你的MySQL不是新版的 要8.0以上

封晴 發表於 2025-8-24 10:14

kyicvs 發表於 2025-8-24 07:31
你的MySQL不是新版的 要8.0以上

我應該是安裝9.4的
頁: [1]
查看完整版本: FATAL - 資料庫讀取錯誤!