Navicat中導入sql文件提示 {MySQL server...} 錯誤?極速解決

首先分析問題:

在navicat中導入sql文件時出現MySQL server has gone away錯誤一般是sql語句太大導致的。

blob.png

解決辦法如下:

打開navicat的菜單中的tools,選擇server monitor,然後在左列選擇數據庫,右列則點選variable表單項,尋找max_allowed_packet,將其值改大,保存。

blob.png

改好之後,再次導入備份的sql文件,一切正常。

如果還是無法解決,可以修改mysql的配置文件,找到mysql目錄下的my.ini配置文件,加入以下代碼:

max_allowed_packet=500M

wait_timeout=288000

interactive_timeout = 288000

根據需要更改數值,最後記得重啓mysql服務。

說明:max_allowed_packet是mysql允許最大的數據包,也就是你發送的請求; wait_timeout是等待的最長時間,這個值大家可以自定義,但如果時間太短的話,超時後就會現了MySQL server has gone away #2006錯誤。max_allowed_packet參數的作用是,用來控制其通信緩衝區的最大長度。如果沒有修改myql權限我們可以在PHP程序裏面,如果php.ini修改起來不方便,可以以下代碼來嘗試解決。

ini_set('mysql.connect_timeout', 300);  
ini_set('default_socket_timeout', 300); 
    在ini_set後,可以用ini_get來驗證參數設置適合符合預期。

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