A ResourcePool could not acquire a resource from its primary factory or source異常解決
一. 異常問題
我在給別人做項目的時候,我自己本地連接的數據庫是5.7,用的mysql-connector-java的驅動包是5.x版本的,然後對方的環境中mysql是8.0.
結果在啓動程序後,在用戶登錄,第一次連接數據庫時,就產生了如下異常信息:
......
A ResourcePool could not acquire a resource from its primary factory or source
......
二. 原因分析
經過各種查詢,可能的原因如下:
驅動配置有誤:driver=com.mysql.jdbc.Driver
數據庫連接地址有誤:url=jdbc:mysql://localhost:3306/test?3useUnicode=true&characterEncoding=utf8
密碼或帳號有誤:username=root, password=root
數據庫未啓動或無權訪問;
項目未引入合適的對應的驅動jar包,mysql-connector-java-5.1.6-bin.jar
mysql root沒有遠程訪問的權限,需要增加權限,增加權限的步驟如下: 進入mysql數據庫: grant all privileges on . to 'root'@'%' identified by 'root' with grant option; flush privileges;
三. 解決辦法
以上檢查完了之後,發現沒有可以解決我的問題的,後來發現,是因爲數據庫版本問題。
我的是mysql5.7,對方的是mysql8.0,然後更換了數據庫版本就好了。