mysqldump 導出中文亂碼


命令:mysqldump -uroot -p test > /data/test.sql

導出后的數據庫打開是亂碼,如下:

開始以為打開的方式不對,就用記事本打開后,用utf-8的編碼格式另保存下

結果打開后,仍然是亂碼。

這時候,猜測是不是數據庫的字符集的編碼有問題,然后進入數據庫,

輸入命令:show variables like 'character%';

很顯然,編碼是沒有問題的。

用命令:mysqldump -uroot -p test  --default-character-set=utf8 > c1.sql 重新導出數據庫,結果仍然是亂碼

新建一個測試數據庫,將導出有亂碼問題的數據庫導入,結果linux下查看,也無中文亂碼問題

接下來只導出test數據庫的表結構,命令:mysqldump -uroot -p -d test  > c1.sql

打開來看,顯示正常,無亂碼

后來搜查資料才發現,是因為表中Blob類型

在命令上加上參數 --hex-blob

命令:mysqldump -uroot -p test  --hex-blob > /test.sql

再次導出,顯示正常,無中文亂碼

 附:

《各種亂碼問題匯總》
http://topic.csdn.net/u/20071124/08/3b7eae69-ed1d-4a77-8895-9930bf3601af.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM