通常项目上线前都有一些初始化数据需要导入,在今天博客系统发布前我使用sqlyog工具远程登录服务器的Mysql数据库,执行sql脚本对初始数据进行导入的时候报错:
Got a packet bigger than‘max_allowed_packet’bytes
查阅资料发现是由于max_allowed_packet的值设置过小,知道原因就好办了,只需要将max_allowed_packet值设置大一点就OK了。
通过终端进入mysql控制台,输入如下命令可以查看max_allowed_packet值的大小。
show VARIABLES like ‘%max_allowed_packet%’;
显示的结果为:
+——————–+———+
| Variable_name | Value |
+——————–+———+
| max_allowed_packet | 1048576 |
+——————–+———+
结果说明目前的配置是:1M
我们需要执行以下命令将max_allowed_packet的值设置大一点
set global max_allowed_packet = 1048576*10;
退出mysql命令行,然后重新登录然后执行命令再次查询max_allowed_packet变量的值发现已经增大了。
show VARIABLES like ‘%max_allowed_packet%’;
设置完之后,再重新导入数据,OK,一切正常。
注意,使用这种方法,重启服务器之后又恢复默认值了。这里博主只是导数据的时候临时将其值设置大一点,导完之后尽量让其恢复原值,因为max_allowed_packet设置过大可能会导致服务器太忙来不及接收,网络差的时候也可能会出现丢包的现象。
转载:
Got a packet bigger than‘max_allowed_packet’bytes错误的解决方法
原文地址:https://www.cnblogs.com/wangkaihua/p/10165350.html