报错:
Packet for query is too large (1149 > 1024). You can change this value on the server by setting the max_allowed_packet' variable.
MySQL max_allowed_packet 设置过小导致记录写入失败
mysql根据配置文件会限制server接受的数据包大小。
有时候大的插入和更新会受max_allowed_packet 参数限制,导致写入或者更新失败。
查看目前配置
show VARIABLES like '%max_allowed_packet%';
显示的结果为:
+--------------------+---------+
| Variable_name | Value |
+--------------------+---------+
| max_allowed_packet | 1048576 |
+--------------------+---------+
可以编辑my.cnf来修改,
在[mysqld]段或者mysql的server配置段进行修改。
max_allowed_packet = 20M
然后退出命令行,重启mysql服务,再进入。
show VARIABLES like '%max_allowed_packet%';
查看下max_allowed_packet是否编辑成功