Communications link failure:The last packet successfully received from the server was 0 millisecond ago


出現這種錯誤的大致情況如下:

1、數據庫連接長時間未使用,斷開連接后,再去連接出現這種情況。這種情況常見於用連接池連接數據庫出現的問題
2、數據庫連接的后綴參數問題

針對上述兩種情況,解決方案如下

1、修改MySQL的參數,my.cnf位於/etc目錄下,修改完成后,重啟mysql

wait_timeout最大為31536000即1年,在my.cnf中加入:

[mysqld]

wait_timeout=31536000

interactive_timeout=31536000

2、連接數據庫的時候參數問題

如果使用mysql版本為5.7+,驅動Driver使用的是:com.msyql.cj.jdbc.Driver
那么你必須在連接url后面添加
useSSL=false

3、直接修改mysql的參數,不用重啟

進入mysql的命令行或者客戶端
show global variables like '%wait_timeout%'; 

將wait_timeout 和interactive_timeout 設置的大一點。默認是8小時(28800)。
set global wait_timeout=604800;
set global interactive_timeout=604800;

刷新緩存
flush privileges;


免責聲明!

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



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