解決mysqldump導數據的亂碼問題

 最近在用mysqldump導一個數據庫的時候發現,原來的庫是latin1的,新庫爲utf8的,導完了以後,發現結果是亂碼的。

最後根據編碼規則,用以下辦法來解決亂碼問題。

 

第一步,導出舊庫

mysqldump --default-character-set latin1 -uroot -pXXX --database db >     /tmp/old.sql

第二步,轉換編碼(只有linux或unix上有這個命令)

iconv -t utf-8 -f gb2312 -c /tmp/old.sql > /tmp/new.sql

第三步,導入新庫

修改new.sql,增加一條sql語句: "SET NAMES utf8;",再將裏面所有的CHARSET=latin1改成CHARSET=utf8,保存。

mysql -hlocalhost -uroot db < new.sql

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