MySQL数据Packet for query is too large 异常解决
1.公司icop系统刚开始运行时正常的,后面过了段时间登录发现有报错,无法登录系统:
2.查看相关组件日志,发现有关数据库的报错:
报错信息摘要如下:
Error querying database. Cause: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1045 > 1024). You can change this value on the server by setting the max_allowed_packet' variable.
### Cause: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1045 > 1024). You can change this value on the server by setting the max_allowed_packet' variable.
3.报错分析:
产生的主要原因就是,查询返回的数据量比较大,而允许返回的”max_allowed_packet”太小,导致以上错误。
4.查看现有参数配置:
5.处理方法:
在mysql配置文件my.cnf中查找max_allowed_packet参数,有的文件没有,没有的话增加
[mysqld]
max_allowed_packet = 20M
done!