MySQL查询报错:
### Error querying database. Cause: com.mysql.cj.jdbc.exceptions.PacketTooBigException: Packet for query is too large (2,482 > 2,048). You can change this value on the server by setting the 'max_allowed_packet' variable. ### The error may exist in class path resource [mapper/system/SysBizProcessResultLogMapper.xml] ### The error may involve defaultParameterMap ### The error occurred while setting parameters ### SQL: select count(*) from sys_biz_process_result_log WHERE dept_id in ( ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? ) and biz_type in ( ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? ) and start_time >= ? and over_time <= ? ### Cause: com.mysql.cj.jdbc.exceptions.PacketTooBigException: Packet for query is too large (2,482 > 2,048). You can change this value on the server by setting the 'max_allowed_packet' variable. ; Packet for query is too large (2,482 > 2,048). You can change this value on the server by setting the 'max_allowed_packet' variable.; nested exception is com.mysql.cj.jdbc.exceptions.PacketTooBigException: Packet for query is too large (2,482 > 2,048). You can change this value on the server by setting the 'max_allowed_packet' variable.
解决方法:设置max_allowed_packet
set global max_allowed_packet = 67108864;
除此之外,比如在Windows下,my.ini
文件配置了max_allowed_packet=100M
,那么你可能需要将此值进行修改。
参考: