mysql8.0中文亂碼(表中有blob型別)
阿新 • • 發佈:2021-01-18
命令: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
轉載於:https://www.cnblogs.com/amy420/p/7234897.html