com.mysql.jdbc.exceptions.jdbc4.CommunicationsE...
解決com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 的錯誤
分析原因:
首先在mysql下用命令:mysql﹥ show global variables like 'wait_timeout'; 檢視wait_timeout
這裡我的wait_timeout是60也就是一分鐘,設定預設值太小
(取值範圍:1-31536000(linux),interactive_time取值隨wait_timeout變動)
所以如果在wait_timeout秒期間內,資料庫連線(java.sql.Connection)一直處於等待狀態,mysql就將該連線關閉。這時,你的Java應用的連線池仍然合法地持有該連線的引用。當用該連線來進行資料庫操作時,就碰到上述錯誤
解決:在linux系統配置檔案:/etc/my.cnf
1.修改配置
vi /etc/my.cnf
wait_timeout = 604800
interactive_timeout = 604800
2:重啟mysql服務(service mysqld restart)
# /etc/init.d/mysql restart
到此那麼連線超時的問題從資料庫上就解決了。
備註:
interactive_timeout:伺服器關閉互動式連線前等待活動的秒數
wait_timeout:伺服器關閉非互動連線之前等待活動的秒數
後續有很多開發填坑的文章釋出,如果對你有幫助,請支援和加關注一下
http://e22a.com/h.05ApkG?cv=AAKHZXVo&sm=339944
https://shop119727980.taobao.com/?spm=0.0.0.0
轉載於:https://my.oschina.net/baishi/blog/172856