最近得到了一個數十M的MySQL腳本文件,准備還原為數據庫。
以前就使用MySQL-Front短暫使用過MySQL,先用它試試,結果掛掉。
這樣吧,先用MySQL-Front創建了空數據庫,然後使用MySQL命令行導入吧。
1)使用MySQL-Front創建了空數據庫
因為看腳本中對象都有DEFAULT CHARSET=gbk COMMENT=… 指令,所以字符集選擇gbk
2)啟動MySQL命令行,輸入密碼
3)使用新建的數據庫b
輸入命令: use b;
4)更改文件讀取字符集為utf8,這一步很關鍵
開始時,看到DEFAULT CHARSET=gbk COMMENT=… ,以為要設為gbk,就使用了以下指令:
set names gbk;
但是導入時,全是錯誤,無法識別中文。
後來認識到應該設置為SQL文件本身的字符集,那SQL文件本身的字符集是什麼呢?
我的方法是用VS.Net IDE 打開文件,然後另存為,選擇“編碼保存”
由此看到字符集是utf-8;
所以
輸入命令: set names utf8; 注意不是 set names utf-8;
5) 導入文件
輸入命令: source 文件路徑;
很快,文件成功導入為數據庫,效率很高。
到MySQL-Front中看一下,數據正常導入,大功告成!