You can change this value on the server by setting the 'max_allowed_packet' variable.

出现原因

本来今天插入程序好好的,突然给我抛个异常
com.mysql.cj.jdbc.exceptions.PacketTooBigException: Packet for query is too large (4,867 > 1,024). You can change this value on the server by setting the 'max_allowed_packet' variable.

在网上查了下,是说mysql的JDBC连接限制了最大包长度1024B,即1KB,超过1KB,就会抛这个异常,你自己看上面的提示(4,867 > 1,024)我这已经是4kb多了,所以才会抛。

解决办法

解决这个问题一共有2种办法:

第一种:

在数据库中执行下面命令

set global max_allowed_packet = 2*1024*10  

这里设置的是最大字节,如果还是不够用,就把数字在调大点,执行完即可看到效果。

第二种:

网上传言还有种方法可使用。修改mysql.cnf(windows下my.ini),在[mysqld]段或者mysql的server配置段进行修改。

max_allowed_packet = 20K

这种需要重启Mysql数据库才能看到效果哦。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值