工作中生产环境出现如下报错
Packet for query is too large
第一时间想到的就是MySQL的某个属性配置问题。果不其然吗MySQL默认每次查询的body最多不超过大概是1M左右,这个可以通过如下命令在自己的MySQL中查看show VARIABLES like ‘%max_allowed_packet%’;
解决方式有两种
第一种
改变这个packet的限制值
set global max_allowed_packet = 610241024
但是一般不建议这样做
第二种
自己做分页啦,你还在想啥呢,一次查这么多数据,不怕full gc啊,不怕内存溢出啊,不怕OOM啊?
好好反思一下为什么一次性查这么多数据