`
elvis4139
  • 浏览: 148258 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

com.mysql.jdbc.PacketTooBigException解决办法

阅读更多
发现程序处理的时候抛出异常:
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

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics