Got a packet bigger than‘max_allowed_packet’bytes錯誤的解決方法


通常項目上線前都有一些初始化數據需要導入,在今天博客系統發布前我使用sqlyog工具遠程登錄服務器的Mysql數據庫,執行sql腳本對初始數據進行導入的時候報錯:
Got a packet bigger than‘max_allowed_packet’bytes

查閱資料發現是由於max_allowed_packet的值設置過小,知道原因就好辦了,只需要將max_allowed_packet值設置大一點就OK了。

通過終端進入mysql控制台,輸入如下命令可以查看max_allowed_packet值的大小。
show VARIABLES like ‘%max_allowed_packet%’;
顯示的結果為:
+——————–+———+
| Variable_name | Value |
+——————–+———+
| max_allowed_packet | 1048576 |
+——————–+———+

結果說明目前的配置是:1M
我們需要執行以下命令將max_allowed_packet的值設置大一點
set global max_allowed_packet = 1048576*10;
退出mysql命令行,然后重新登錄然后執行命令再次查詢max_allowed_packet變量的值發現已經增大了。
show VARIABLES like ‘%max_allowed_packet%’;

設置完之后,再重新導入數據,OK,一切正常。

注意,使用這種方法,重啟服務器之后又恢復默認值了。這里博主只是導數據的時候臨時將其值設置大一點,導完之后盡量讓其恢復原值,因為max_allowed_packet設置過大可能會導致服務器太忙來不及接收,網絡差的時候也可能會出現丟包的現象。

注意注意注意:
如果linux環境下且不想回復默認值建議修改配置文件,如果修改不成功把參數值10M改為 數字例如 1023213124

轉載:
Got a packet bigger than‘max_allowed_packet’bytes錯誤的解決方法


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM