mysql Communications link failure 异常解决方案
主要异常信息(注意:解决方案在最后)
The last packet successfully received from the server was 5,005 milliseconds ago. The last packet sent successfully to the server was 5,007 milliseconds ago.
日志截图
百度一下,一搜一大把资料,但是大致大多有以下两种方案
网上方案一:修改mysql以下配置,重启mysql
set wait_timeout=604800;
set interactive_timeout=604800;网上方案二:jdbcUrl后面加上 autoReconnect 配置
autoReconnect=true
例如:jdbc
//localhost:3306/db_name?autoReconnect=true
但是我试过以上两种方案均无效,异常依然出现
主要原因
sql运行时间过长
最终解决方案
方案一:
优化sql,添加索引。
方案二:
jdbcUrl后面加上 connectTimeout 和 socketTimeout 配置,值可以根据异常信息进行修改
connectTimeout=6000&socketTimeout=6000
jdbc:mysql://localhost:3306/db_name?autoReconnect=true&connectTimeout=6000&socketTimeout=6000
还没有评论,来说两句吧...