通常項目上線前都有一些初始化數據需要導入,在今天博客系統發佈前我使用sqlyog工具遠程登錄伺服器的Mysql資料庫,執行sql腳本對初始數據進行導入的時候報錯: Got a packet bigger than‘max_allowed_packet’bytes 查閱資料發現是由於max_allow... ...
通常項目上線前都有一些初始化數據需要導入,在今天博客系統發佈前我使用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設置過大可能會導致伺服器太忙來不及接收,網路差的時候也可能會出現丟包的現象。
轉載:
Got a packet bigger than‘max_allowed_packet’bytes錯誤的解決方法