mysql在通過匯入sql檔案可能會出現下面二個問題:
1.如果sql檔案過大,會出現"mysql server has gone away"問題;
2.如果sql檔案資料有中文,會出現亂碼 www.2cto.com
解決問題:
問題1:出現mysql server has gone away"問題,是因為mysql預設的"max_allowed_packet"變數值過小.
檢視目前配置
show variables like '%max_allowed_packet%';
顯示的結果為:
+--------------------+---------+
| variable_name | value |
+--------------------+---------+
| max_allowed_packet | 1048576 |
+--------------------+---------+
說明目前的配置是:1048576/1024/1024 = 1m
修改max_allowed_packet值:
方法1: set global max_allowed_packet = 500*1024*1024;(經測試無效)
方法2: 直接修改配置檔案,重啟mysql www.2cto.com
windows中修改my.ini檔案,在linux中修改my.cnf檔案.
重啟mysql後,在檢視修改後的max_allowed_packet值
問題2:登入時指定字符集編碼
mysql -uroot -p3308 -p123456 - -default-character-set=utf8 (-p是指指定埠號)
最後通過source命令 即可成功匯入:
source e:ydj\test.sql
另外:設定
max_allowed_packet 時的方法:
1)直接在my.ini中加入這個字段 2)
set global max_allowed_packet = 2*1024*1024*10
3)設定完以後檢視是否完成
show variables like '%max_allowed_packet%';
檢視下max_allowed_packet是否編輯成功
mysql 資料過大時的匯入
當需要匯入的檔案比較大時,匯入會報錯。報錯內容為 error code 1153 got a packet bigger than max allowed packet bytes錯誤提示。2006 mysql server has gone away 這時需要我們修改mysql的配置檔案 linu...
MySQL 大檔案匯入匯出
大sql檔案匯入 設變數 max allowed packet 也可以匯入時臨時設定 root localhost vi etc my.nf mysqld mysqld 下 追加一行配置 安裝時已配好,忽略此操作 max allowed packet 32m 大檔案匯入時用,也可以在命令列中臨時設定...
Mysql匯入過大sql檔案過慢問題解決
首先需要改動下mysql的配置,這個也是我自己在網上找的,我感覺網上的比較亂,所以自己就整理了一下,也是對自己遇到問題的乙個記錄吧!1.改動mysql配置的語句 然後執行之後重新啟動mysql服務。2.然後採用dos命令列的方法執行sql檔案,先進入mysql執行環境,選擇資料庫 我的資料庫已經在電...