重新安装完mysql数据库之后,准备将备份数据库进行导入,但是,导入的过程并不顺利,本地导入sql文件时,出现'MySQL server has gone away'的错误。
1、问题分析
'MySQL server has gone away'的问题意思就是指client和MySQL server之间的链接断开了。造成这样的原因一般是sql操作的时间过长,或者是传送的数据太大。mysql根据配置文件会限制server接受的数据包大小。有时候大量数据的插入和更新会受max_allowed_packet 参数限制,导致写入或者更新失败。
2、解决办法
查询当前配置:
show VARIABLES like '%max_allowed_packet%';
以上说明目前的配置是:1M(1024*1024),我执行SQL文件大小大约有6M左右,所以报这个错误,现在也就能想通了。所以我们需要在配置文件中去修改这个配置参数即可。
编辑mysql的配置文件my.ini或者my.cnf(不同环境,mysql配置文件的后缀名可能不同)
max_allowed_packet = 20M(最大可输入256M即256*1024*1024)
配置参数之后,记得重新msyql,才能生效。