问题描述:
报错信息:
Caused by: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1354 > 1024). You can change this value on the server by setting the max_allowed_packet' variable MySQL根据配置文件会限制Server接受的数据包大小。有时候插入、更新或查询时数据包的大小,会受 max_allowed_packet 参数限制,导致操作失败。
查看 max_allowed_packet 参数:
在客户端执行:
show VARIABLES like '%max_allowed_packet%'; 得到结果如下: +--------------------+------------+ | Variable_name | Value | +--------------------+-------------------+ | max_allowed_packet | 1024 | +--------------------+-------------------+ 修改方法:1、修改配置文件
可以编辑my.cnf来修改(windows下my.ini),在[mysqld]段或者mysql的server配置段进行修改。
max_allowed_packet = 20M如果找不到my.cnf可以通过
mysql --help | grep my.cnf去寻找my.cnf文件。
linux下该文件在/etc/下。
2、在mysql命令行中修改
set global max_allowed_packet = 2*1024*1024*10 //这里的数值为字节数,这里改为20M,需要重新登陆客户端起作用 注:在客户端用命令修改后,只能暂时起作用,重新启动MYSQL后,会恢复原来的值。