mysqldump报错 – Error 2013 Lost connection to MySQL server

一、具体报错信息:

mysqldump: Error 2013: Lost connection to MySQL server during query when dumping table xxx at row: 258609

二、原因:

网上看了下,大概说在mysqldump的时候,因为数据量太大,一次性接收不了那么多数据,所以server端发送过来的数据会积压在内存等待发送,这个等待时间就是net_write_timeout的时间。当超过了该时间,则会断开mysqldump的连接,同时抛出错误:error 2013: Lost connection。

三、解决方式:

网上大部分说修改net_write_timeout时间即可。比如改为1200。
操作过程:
1 先登录mysql:mysql -u root -p
2 先查看默认时间:show global variables like '%timeout%'
3 修改时间:set global net_write_timeout = 1200
4 可以再次查看下是否已改变:show global variables like '%timeout%'
5 退出mysql,再次执行mysqldump:mysqldump -uroot -p -B monitor> /var/www/mysqlbackup/db.xxx.sql

上面操作过程,不用重启mysql。可能是退出mysql后一定时间内,这个值不会被重置回默认值。实在不行,可重启试试:service mysqld restart

另外,这个net_write_timeout时间,最好在操作完mysqldump后改回去默认值。

你可能感兴趣的:(mysql)