㈠ 資料庫連接池連接超時報錯
資料庫連接池連接超時報錯是由於資料庫重啟或空閑連接超時導致的問題。當資料庫連接在等待狀態超過設置的最大timeout時間時,資料庫會強行斷開連接,引發異常。默認情況下,MySQL的等待時間長達8小時,可以通過命令參數查看。
解決此問題,可通過以下方法:
重啟伺服器,資料庫連接池會重新初始化,重新獲取有效連接。
調整資料庫連接池配置,推薦增加探活配置,確保連接在空閑時間未超過最大空閑時間前保持有效。以Druid為例,可查看官網獲取更多配置信息。
增大數據庫默認的超時等待時間(wait_timeout),修改global參數以真正調整超時時間。同時,interactive_timeout參數也會影響連接行為。
在JDBC連接URL中啟用自動重連機制,設置為jdbc:mysql://localhost:3306/test?user=root&password=&autoReconnect=true。
考慮減少連接池內連接的生存周期,使之小於所設置的wait_timeout值,進一步避免連接被斷開。