使用mysqldump时,显示MySQL server has gone away

有运维或运维开发方面的需求,可以联系博主QQ 452336092或Email:admin#centos.bz(收费)

mysqldump 是导出及导入MySQL数据库的常用命令,当我们导入或导出较大数据库时偶尔会遇到如下错误信息。

ERROR 2006 (HY000) at line **: MySQL server has gone away

一般情况下是因为 max_allowed_packet 参数(默认值为1MB)的限制所导致的,因此我们需要调整该参数并重启MySQL。

查看当前的max_allowed_packet的大小。

show variables like 'max_allowed_packet';
+--------------------+---------+
| Variable_name      | Value   |
+--------------------+---------+
| max_allowed_packet | 1048576 |
+--------------------+---------+

修改 /etc/my.cnf 文件之后,重启MySQL。

[mysqld]
max_allowed_packet = 32MB

max_allowed_packet 是控制从客户端向MySQL服务端可传送包(packet)的大小的参数,因此需要传送较大文件时提前修改该参数。

原文出处:yunjin-keji -> http://yunjin-keji.com/error-2006-of-mysqldump

打赏

如果此文对你有所帮助,请随意打赏鼓励作者^_^