mysqldump报错 – Error 2013 Lost connection to MySQL server
Posted simonbaker
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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
后改回去默认值。
以上是关于mysqldump报错 – Error 2013 Lost connection to MySQL server的主要内容,如果未能解决你的问题,请参考以下文章
使用mysqldump 备份 恢复从库报错解决方案(ERROR 1872)
解决mysqldump备份报错: Couldn't execute 'SHOW FIELDS FROM Unknown error 1356
mysqldump: Error 2020: Got packet bigger than ‘max
mysqldump: Got error: 1102: Incorrect database nam
mysqldump: Got error: 1449: The user specified as a definer ('user'@'%') does not ex