max_allowed_packet

来源:互联网 发布:linux 手动启动tomcat 编辑:程序博客网 时间:2024/05/07 19:00

mysql中不是所有长度的sql语句都会成功的处理,有时候会根据配置文件的max_allowed_packet值限制server接受的数据包大小。

有时候大的插入和更新会被max_allowed_packet 参数限制掉,导致失败。

该值设置过小将导致单个记录超过限制后写入数据库失败,且后续记录写入也将失败。

mysql where 中的in 中参数的个数就受到max_allowed_packet 的限制。

max_allowed_packet参数的默认值是1M

 
修改max_allowed_packet参数的方法
1) 方法1
可以编辑my.cnf来修改(windows下my.ini),在[mysqld]段或者mysql的server配置段进行修改。

参数的最大值是1GB

max_allowed_packet = 10M

linux下如果找不到my.cnf可以通过下面命令查找

mysql –help | grep my.cnf

2) 方法2

进入mysql server
在mysql 命令行中运行
set global max_allowed_packet = 2*1024*1024*10
然后关闭掉这此mysql server链接,再进入。
show VARIABLES like '%max_allowed_packet%';
查看下max_allowed_packet是否编辑成功


windows 系统下直接在数据库客户端工具中执行set global max_allowed_packet = 2*1024*1024*10即可

0 0
原创粉丝点击