欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

com.mysql.jdbc.PacketTooBigException解决办法 java

程序员文章站 2022-06-19 23:37:51
...
发现程序处理的时候抛出异常:
org.apache.ibatis.exceptions.PersistenceException: \n### Error updating database.  Cause: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1049134 > 1048576). You can change this value on the server by setting the max_allowed_packet' variable.\n


调查发现,是在执行批量操作时候数据时候max_allowed_packet参数太小的问题。
show VARIABLES like '%max_allowed_packet%';  


使用命里将max_allowed_packet设置为10M。
set global max_allowed_packet = 10*1024*1024 


重新登录查询(必须退出重新登录),值已经改变。执行程序,问题解决。

注:此种方法只对当此设置生效,重启mysql后设置失效。如需永久生效可以修改mysql.cnf(windows下my.ini),在[mysqld]段或者mysql的server配置段进行修改。
max_allowed_packet = 20K

相关标签: java