关于max_allowed_packet的修改,以及修改后总是自动重置1024

时间:2022-06-25 18:14:50

项目中查询的时候会好好的,但是有时候会突然间报错:packet for query is too large(2248>1024),you can change this value on the server by setting the max_allowed_packet variable.


首先你可以先查询一下max_allowed_packet的值是多少,(此变量是用来控制其通信缓冲区的最大长度)

SHOW VARIABLES LIKE '%max_allowed_packet%';

如果太小,就可以把他改大点,当然,有两种方法:

一是改my.cnf文件:

关于max_allowed_packet的修改,以及修改后总是自动重置1024

关于max_allowed_packet的修改,以及修改后总是自动重置1024

二是使用命令行,也许这种方法在mysql重启后会变回配置文件中的值(待验证):

		set global max_allowed_packet = 2*1024*1024*10
 
 
    但是:即使我是使用方法一,一段时间后仍会变成默认的1024。如果哪位大神看到小弟的疑问,能否解释下?
	有一篇帖子在讨论这个问题,留待以后再查找方法:帖子地址


	update:2016-01-11
	上边关于即使修改了配置文件中的参数也会在一天时间重置成1024的问题,原来不只是需要修改服务端,还需要修改客户端		
 参考地址:点击这里