數據庫連接超時Caused by: java.io.EOFException: Can not read response from server. Expected to read 4 bytes, read 0 bytes before connection was unexpectedly lost.


錯誤分析:

     數據庫連接已經關閉或者失效后仍然在執行操作,導致:mysql服務沒返回數據

     1.客戶端連接池中連接,已經失效;但是:連接池還沒有檢測到;當操作數據庫時,啟用該連接,拋出該錯誤

     2.mysql服務器,已關閉該連接,但:客戶端連接池中該連接,尚未檢測到。當用該連接操作數據庫時,拋出該錯。



處理辦法:

     1.每次連接操作數據庫時,檢測:該連接的有效性

    <property name=”minEvictableIdleTimeMillis” value=”1800000″ />
    <property name=”numTestsPerEvictionRun” value=”3″ />
    <property name=”testOnBorrow” value=”true” />
    <property name=”testWhileIdle” value=”true” />
    <property name=”testOnReturn” value=”true” />
    <property name=”validationQuery” value=”SELECT 1″ />


     2.縮短監控空閑線程的時間。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM