修复 MySQL 编码问题
浏览:777次 出处信息
有个疑似 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。
建议继续学习:
- 字符编码和中文乱码小叙 (阅读:5702)
- 中文编码杂谈 (阅读:4988)
- Hadoop的map/reduce作业输入非UTF-8编码数据的处理原理 (阅读:4666)
- PHP编码规范 (阅读:4406)
- base64_encode 和 urlencode (阅读:4130)
- UTF-8编码中BOM的检测与删除 (阅读:4083)
- Linux screen窗口中文乱码问题 (阅读:4007)
- Unicode与字符汉字相互转换 (阅读:3977)
- python-django的中文编码总结 (阅读:3846)
- JAVASCRIPT完美实现UTF8页面提交数据到GB2312 (阅读:3640)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
后一篇:Python连接 MySQL 数据库的超时问题 >>
文章信息
- 作者:Xin LI 来源: delphij's Chaos
- 标签: 编码
- 发布时间:2021-05-17 23:26:41
建议继续学习
近3天十大热文
- [70] IOS安全–浅谈关于IOS加固的几种方法
- [67] Twitter/微博客的学习摘要
- [65] 如何拿下简短的域名
- [62] android 开发入门
- [61] find命令的一点注意事项
- [59] Go Reflect 性能
- [58] 流程管理与用户研究
- [57] 图书馆的世界纪录
- [56] 读书笔记-壹百度:百度十年千倍的29条法则
- [56] Oracle MTS模式下 进程地址与会话信