一、具体报错信息:
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
后改回去默认值。