程序报错信息
The last packet successfully received from the server was 34,132 milliseconds ago. The last packet
……
问题描述
连接池保留了连接,但是mysql数据库已经回收了连接
解决方案
程序连接池配置
如果使用的是JDBC,在JDBC URL上添加?autoReconnect=true
jdbc:mysql://10.10.10.10:3306/mydb?autoReconnect=true
如果是在Spring中使用DBCP连接池,在定义datasource增加属性validationQuery和testOnBorrow
如果是在Spring中使用c3p0连接池,则在定义datasource的时候,添加属性testConnectionOnCheckin和testConnectionOnCheckout
修改MySQL的参数.
在/etc/my.cnf 添加
[mysqld]
wait_timeout=31536000
interactive_timeout=31536000