【FAQ】MySQL解決PacketTooBigException問題

【問題描述】

在部署Java Web應用的過程中,出現如下的異常信息:

Hibernate operation:。。。(省略部分異常)。。nested exception is com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1126 > 1024). You can change this value on the server by setting the max_allowed_packet' variable.

【解決辦法】

如錯誤提示中的解決方案一致,一般由於Model中設置了lob字段,存儲大字段數據,導致數據庫異常,要手動重新設置“max_allowed_packet”的屬性值。默認1M。更改爲20M,即可解決問題,方法如下:

Linux中編輯/etc/my.cnf文件,命令:

# vi /etc/mycnf

進入編輯模式,添加

[mysqld]

max_allowed_packet = 20M

保存後退出,命令如下:

Esc 之後 鍵入 :wq

重新啓動MySQL服務,命令如下

service mysqld restart


至此,重新啓動Java Web服務器,問題解決。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章