修复 MySQL 编码问题
浏览:895次 出处信息
有个疑似 OCD 患者最近抽风升级了一下 MySQL 数据库,然后发现 blog 里面全都变成了乱码。
那乱码的模式一看就是把 utf8 直接扔进了 latin1 的数据库,一看 SHOW CREATE TABLE mt_entry 发现果然如此。
略有些慌神,看了 MySQL 文档发现用 ALTER TABLE 的 CONVERT TO 硬来有点不太行好,遂想到可以试试看 mysqldump,于是做了:
当作 latin1(不然会再按 utf8 编码一次):
mysqldump mt_delphij --default-character-set=latin1 -r utf8.dump
把里面的 CHARSET=latin1 替换为 CHARSET=utf8:
sed -e s,CHARSET=latin1,CHARSET=utf8,g < utf8.dump > utf8.dump.edited
删掉其中的 SET NAMES latin1。
然后重新导入:
mysql -uroot -p --default-character-set=utf8 mt_delphijmysql> SET names utf8;mysql> SOURCE utf8.dump.edited;
还好没用到 zfs rollback。
建议继续学习:
- 字符编码和中文乱码小叙 (阅读:5791)
- 中文编码杂谈 (阅读:5047)
- Hadoop的map/reduce作业输入非UTF-8编码数据的处理原理 (阅读:4722)
- PHP编码规范 (阅读:4459)
- base64_encode 和 urlencode (阅读:4174)
- UTF-8编码中BOM的检测与删除 (阅读:4139)
- Linux screen窗口中文乱码问题 (阅读:4064)
- Unicode与字符汉字相互转换 (阅读:4053)
- python-django的中文编码总结 (阅读:3897)
- JAVASCRIPT完美实现UTF8页面提交数据到GB2312 (阅读:3689)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
后一篇:Python连接 MySQL 数据库的超时问题 >>
文章信息
- 作者:Xin LI 来源: delphij's Chaos
- 标签: 编码
- 发布时间:2021-05-17 23:26:41
建议继续学习
近3天十大热文
-
[61] ABTest 平台设计 - 如何进行流量分桶
-
[46] 如何拿下简短的域名
-
[43] 图书馆的世界纪录
-
[42] android 开发入门
-
[42] 流程管理与用户研究
-
[42] Twitter/微博客的学习摘要
-
[41] WEB系统需要关注的一些点
-
[41] Oracle MTS模式下 进程地址与会话信
-
[41] 【社会化设计】自我(self)部分――欢迎区
-
[39] Go Reflect 性能