调整mysql中max_allowed_packet的大小
max_allowed_packet 包或任何生成的/中间字符串的最大大小。
这个过程大部分发生在load data file中,有时也发生在update,insert中。
包消息缓冲区初始化为net_buffer_length字节,但需要时可以增长到max_allowed_packet字节。该值默认很小,以捕获大的(可能是错误的)数据包。
如果你使用大的BLOB 列或长字符串,你必须增加该值。应同你想要使用的最大的BLOB一样大。max_allowed_packet的协议限制为1GB。这个值必须是1024的倍数;如果不是1024倍数的值,mysql就会自动四舍五入为最接近的1024的倍数。
当你改变max_allowed_packet的值,你就改变了消息缓冲区的大小,你也应该在客户端允许的范围内修改客户端的buffer大小。在客户端,max_allowed_packet默认值是1GB。你可以通过命令行或者配置文件,改变客户端的max_allowed_packet值。
在MySQL5.0.84版本中,会话max_allowed_packet值,还只是只读的。在5.0.84之前的版本,设置会话中可以设置max_allowed_packet的值,但是没什么作用。
设置方法:
在/etc/my.cnf中,
max_allowed_packet = 1M
您可能感兴趣的文章:
调整mysql中max_allowed_packet的大小
解决#2006 - MySQL server has gone away错误
mysql优化配置之max_allowed_packet设置
MySQL导入数据库时报错,MySQL server has go away
MySQL中max_allowed_packet设置过小导致记录写入失败的解决办法
mysql max_allowed_packet 查询和修改问题
Mysql中max_allowed_packet限制导致主从同步出错
mysql导入数据提示的MySQL server has gone away解决办法
有关mysql server has gone away报错的原因分析
mysql 导入数据报2006错误的解决方法