您的位置:首页 > 产品设计 > UI/UE

Packet for query is too large (1032 > 1024). You can change this value on the server by setting the

2017-10-30 09:11 621 查看

问题描述:

后台开发过程中,运行程序,加载数据时出现问题,没显示数据

提示错误:

Packet for query is too large (1032 > 1024). You can change this value on the server by setting the max_allowed_packet’ variable.

问题分析:

mysql max_allowed_packet 设置过小导致记录获取或者更新失败

mysql 根据配置文件会限制server接受的数据包大小

查看目前配置

输入sql语句

show VARIABLES like ‘%max_allowed_packet%’;

输出结果:

Variable_namevalue
max_allowed_packet1024
slave_max_allowed_packet1073741824
这里显示max_allowed_packet的大小只有1M

问题解决

方法1:使用sql语句设置max_allowed_packet的值

先使用如下语句进行设置,

set @@max_allowed_packet=2*1024*1024

提示错误:

Error Code: 1621. SESSION variable ‘max_allowed_packet’ is read-only. Use SET GLOBAL to assign the value

改为如下语句

SET GLOBAL max_allowed_packet=1073741824

正常执行,成功修改max_allowed_packet的值

方法2:修改配置文件

编辑my.cnf来修改(windows下my.ini),在[mysqld]段或者mysql的server配置段进行修改。

max_allowed_packet = 20M

如果找不到my.cnf可以通过mysql –help | grep my.cnf去寻找my.cnf文件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql query max-allow
相关文章推荐