1. 程式人生 > >com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1086 > 1024).

com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1086 > 1024).

報錯:com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1086 > 1024). You can change this value on the server by setting the max_allowed_packet’ variable.

原因是mysql的max_allowed_packet設定過小引起的

解決辦法:把該引數設定大點

1)在Navicat工具:
檢視要修改的引數值:

show VARIABLES like '%max_allowed_packet%'
;

然後設定:

set global max_allowed_packet = 2*1024*1024*10

這是設定資料接收值為20M
這裡寫圖片描述

最後退出Navicat工具,重啟MySQL資料庫,然後再登入工具查詢值,發生改變即修改成功

2)直接修改配置檔案
linux伺服器中我直接進入etc目錄下編輯配置檔案my.cnf,修改max_allowed_packet = 1M 中的引數值1M改為任意較大的數字,若沒有直接新增max_allowed_packet = 20M

然後儲存退出重啟mysql資料庫修改成功。
重啟mysql命令為service mysqld restart
這裡寫圖片描述