mysql 设置 max_allow_packet

来源:互联网 发布:yii框架连接数据库 编辑:程序博客网 时间:2024/06/05 09:10

mysql根据配置文件会限制server接受的数据包大小。有时候大的插入和更新会受max_allowed_packet 参数限制,导致写入或者更新失败。

今天博主为了这个鼓捣了一下午。mysql默认接受data最大是1M,也就是超过了就会失败,mysql官方也有这方面的说明:插眼传送,在这里写一下两种解决方法,增加或者减小随项目的需要。

1.直接在命令行中运行命令

set global max_allowed_packet = 2*1024*1024*10; 或者set global max_allowed_packet = 16M;(博主是用的后面这个)

  然后输入命令   show VARIABLES like '%max_allowed_packet%';   就可以看到自己改的值。

这种方法管用是管用,但是不能重启mysql服务,一旦重启mysql,会自动恢复成默认值 1M,所以有些用这种方法改了的,过短时间又恢复默认值,不是bug也不是什么黑客入侵,而是因为重启了mysql。

2.修改mysql的配置文件(关于如何找到当前正在使用的配置文件,参考这篇文章:插眼传送)

max_allowed_packet = 16M 

  找到他把后面的值改掉,重启mysql就永久生效了。

0 0