用Navicat运行一个比较大的.sql文件时报错:[Err] 2006 - MySQL server has gone away
当遇到如下问题时:[ERR] 2006 - MySQL server has gone away
说明你的SQL语句太大了:稍微难以测试和验证,但是MySQL使用最大数据包站站点进行服务器和客户端之间的通信。如果语句包含大字段,则可能由于SQL语句的大小,而被中止。
我们可以通过语句查看一下允许的最大包大小:show global variables like ‘max_allowed_packet’;
如果值比较小,可以设置大一点:set global max_allowed_packet=1024102416;
如果修改后不够大,可以继续加大:set global max_allowed_packet=1024102432;
注意:通过命令行设置的大小仅对本次的有效,重启后就会回归原始值。通过修改配置文件(my.ini)则可以永久的设置参数。
成功