MySQL导入数据库时报错,MySQL server has go away
用mysqldump命令导出MySQL数据库之后,导入数据库时经常会使用如下命令。
代码如下 | |
mysql --default-character-set=utf8 -u root -p dbname < alldata.sql |
但是当我们导出来的MySQL数据库较大的时候,经常会遇到如下错误信息。
ERROR 2006 (HY000) at line **: MySQL server has gone away
一般情况下是因为max_allowed_packet参数(默认是1MB)的限制所导致的,因此我们需要调整max_allowed_packet参数并重启MySQL。
查看现在的max_allowed_packet的大小。
代码如下 | |
show variables like 'max_allowed_packet'; |
如下修改my.cnf文件之后,重启MySQL就可以解决。
代码如下 | |
[mysqld] max_allowed_packet = 32MB |
max_allowed_packet是控制从客户端向MySQL服务端可传送包(packet)的大小的参数,因此需要传送较大文件时提前修改max_allowed_packet参数。