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