Got a packet bigger than 'max_allowed_packet' bytes

时间:2024-01-03 20:30:38

昨天用导入数据的时候发现有的地方有这个错误。后来才发现我用RPM包装的MYSQL配置文件里面有old_passwords=1去掉就可以了。

Got a packet bigger than ‘max_allowed_packet’ bytes or ERROR 1153 (08S01) at line 616: Got a packet bigger than ‘max_allowed_packet’ by tes...

  昨天用导入数据的时候发现有的地方有这个错误。

  后来才发现我用RPM包装的MYSQL配置文件里面有old_passwords=1去掉就可以了。

  还有加了
max_allowed_packet=500M
这样就不会出错了。

  PS:建议在5.0后的版本中关掉old_passwords选项。

  如果你不知道你的OLD_PASSWORDS是不是开启了,可以用命令。

show VARIABLES like '%old_passwords%';

max_allowed_packet

  Mysql 5.1 遇到的信息包过大问题 用客户端导入数据的时候,遇到 错误代码: 1153 - Got a packet bigger than 'max_allowed_packet' bytes 终止了数据导入。

  当MySQL客户端或mysqld服务器收到大于max_allowed_packet字节的信息包时,将发出“信息包过大”错误,并关闭连接。对于某些客户端,如果通信信息包过大,在执行查询期间,可能会遇到“丢失与MySQL服务器的连接”错误。

  客户端和服务器均有自己的max_allowed_packet变量,因此,如你打算处理大的信息包,必须增加客户端和服务器上的该变量。一般情况下,服务器默认max-allowed-packet为1MB

  如果你正在使用mysql客户端程序,其max_allowed_packet变量的默认值为16MB。要想设置较大的值,可用下述方式启动mysql

  mysql>mysql --max-allowed-packet=32M

  在my.ini也可以更改,需要重新启动mysql

  在my.ini加入[mysql]max_allowed_packet=16M