日期:2014-05-16 浏览次数:20857 次
MySQL服务器默认的“wait_timeout”是28800秒即8小时,意味着如果一个连接的空闲时间超过8个小时,MySQL将自动断开该连接,而连接池却认为该连接还是有效的(因为并未校验连接的有效性),当应用申请使用该连接时,就会导致下面的报错。
The last packet successfully received from the server was 596,688 milliseconds ago.
?
1.版本4之前有效:
在JDBC URL中使用autoReconnect属性:
autoReconnect=true&failOverReadOnly=false
2.版本5.0之后就需要修改MySQL的参数了,wait_timeout最大为31536000即1年,在my.cnf中加入:
[mysqld] wait_timeout=31536000 interactive_timeout=31536000
?
重启生效,需要同时修改这两个参数。
?