问题:
出现在大批量添加或修改数据时出现的,在迁移数据库、备份还原或数据导入时也会出现:
1153:Got a packet bigger than‘max_allowed_packet’bytes
原因:
max_allowed_packet就是指mysql服务器端和客户端在一次传送数据包的过程当中最大允许的数据包大小,而mysql的默认max_allowed_packet的值为16M,所以MySQL根据配置文件会限制Server接受的数据包大小大的插入和更新会受 max_allowed_packet 参数限制,导致大数据写入或者更新失败
解决方法:
直接修改mysql配置文件就行,根据需求改大就行
修改配置文件my.ini(如果存在,调整其值就可以)
max_allowed_packet = 512M;(根据自己需求改动)
临时使用的话执行:
set global max_allowed_packet = 1024*1024*512;
注:命令行修改,会在重启后失效,修改值为 512M,可以根据实际情况调整数值,因为参数生效范围为global,不是session.,所以服务器重启设置会失效。