使用mysqldump进行数据库备份时,如果遇到以下错误,表示执行备份时超时了。
Error 2013: Lost connection to MySQL server during query when dumping table `x_consume` at row: 202091
说明mysql的timeout设置有问题
解决办法如下:
查询已有超时配置,使用root帐号登录数据库,执行以下使命:
SHOW global VARIABLES LIKE '%timeout%'
找到 net_read_timeout 和 net_write_timeout 看后面的数据是多少,一般都是30和60,把他稍改大一点,更改方法如下:
方法一:(临时生效,不用重启:)数据库执行以下两条语句:
SET GLOBAL net_read_timeout = 120;
SET GLOBAL net_write_timeout = 120;
SET GLOBAL max_allowed_packet = 52428800;
再查询,就是把超时时间改成了120秒了,根据实际情况进行调整
注意:此方法更改后,mysql重启后会失效,可以选这么修改,看下下一次备份是否正常,如果不正常,适当调整net_read_timeout和net_write_timeout 的值,max_allowed_packet就保的这个就可以了。确定没问题后,再使用下面的方法二,永久,重启后也会生效。
方法二:(需要重启mysql,永久生效)
打开mysql的配置文件【windows下为:my.ini;linux下为my.cnf】
在[mysqld]下添加以下两条:
net_read_timeout=120
net_write_timeout=120
max_allowed_packet = 52428800
重启mysql后生效。
作者:宋德美 创建时间:2024-01-16 13:37
最后编辑:宋德美 更新时间:2025-05-29 10:43
最后编辑:宋德美 更新时间:2025-05-29 10:43