您的位置:首页 > 数据库 > SQL

Mysql数据库连接超过8小时,提示:MYSQL Error 2006:MySQL server has gone away

2018-01-27 11:34 537 查看
一、说明
1、Mysql的默认数据库连接超过8小时(8小时即28800s没有数据库做任何操作)将主动断开这条连接,
后续在该连接上进行的查询操作都将失败,提示错误MYSQL Error 2006:MySQL server has gone away
2、注意mysql 5.0及以后版本的,只能用方法一,方法二只能用在mysql5.0以前,不包括5.0;
3、本文以mysql server超时时间设置为7天=604800毫秒为例子说明(实际天数根据需要修改);
4、找不到/etc/my.cnf请查看是不是在/etc/mysql/my.cnf或其他目录下。(不行百度一下)
二、超时时间配置(具体实现)
1、方法一(推荐)
vim /etc/my.cnf
在[mysqld]后面加上如下两句话 
wait_timeout=604800
interactive_timeout=604800
重启mysql服务
# service mysqld restart 
2、方法二
msyql> show global variables like '%timeout%';
msyql> set global wait_timeout = 604800;
msyql> set global interactive_timeout = 604800;
msyql> show global variables like '%timeout%';
PS:不过本人还是觉得上面的做法并不太妥当,但是现在用的很普遍,以后有时间再研究研究使用连接池来管理连接。先借下CSDN这位博主的评论给大家思考下,如图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息