mysql 乱码 latin1_mysql 数据库 latin1 导致的乱码
很多年以前遇到 mysql 的乱码问题。最近又遇到了。
mysql 这货,默认的编码是 latin1 (例如 latin1_swedish_ci)。——实在不明白为什么是这样。
而最近10年,主流的编码方式已经是 utf8 。mysql 中,最初采用 utf8_generalci 与其匹配,后来逐渐地使用 utf8unicode_ci 与其匹配。
比较神奇的是,有时候,mysql 数据库已经从 latin1 转成了 utf8 ,但是,phpmyadmin 中,显示出来的是乱码,而程序中现出来的却是正常的。——因此,如果不看数据库,也许不知道 mysql 层面保存的数据已经乱成一团。
但是,如果后期需要转移数据、或者恢复数据,就很可能发现了这些乱码,并且发现程序读取之后的字符也是乱码了。
今晚找到半天,终于在 煩人的latin1轉utf-8問題 找到了解决办法。
这个解决办法的主要思路就是:既然原来的数据是 latin1 格式的,那么,备份时就先按照 latin1 格式去把数据弄出来:
mysqldump -c -h localhost --user 用户名--password=用户密码 --default-character-set=latin1 --skip-set-charset 数据库名|bzip2 > mysql-backup-`date +%Y%m%d`.bz2
将这个压缩包里面的文件另存为 utf8 格式的 sql 文件之后,在顶部增加这一行:
SET character_set_connection=utf8, character_set_results=utf8, character_set_client=binary;
然后,重新导入即可。
ghost中文网在 在阿里云服务器上安装 Ghost (3)-- 安装 MySQL 提到如何设置 mysql 的默认字符集,如下:
1、编辑 /etc/mysql/my.cnf
nano -w /etc/mysql/my.cnf
2、找到 [mysqld] 这一段,增加以下 3 行; ——如果没有 [mysqld] 这一行,就先新增这行
collation-server = utf8_unicode_ci init-connect='SET NAMES utf8' character-set-server = utf8
重新启动 mysql 之后,就能避免 mysql 采用奇葩的 latin1 字符集了。
mysql 乱码 latin1_mysql 数据库 latin1 导致的乱码相关推荐
- mysql导出sql乱码_MySQL数据库导出SQL出现乱码解决
环境:NavicatforMysql8.2 + MySQL Sever 5.1 问题:MySQL 数据库导出SQL出现乱码 解决: 方法一: 将数据库的编码改成UTF-8. 环境:Navicatfor ...
- sqlserver mysql 乱码_SQLServer数据库如何解决中文乱码问题?方法有哪些?
很多使用数据库的人都知道,在安装SQLServer数据库是,如果设置不当就会出现一些中文乱码.主要原因是,很多人在使用默认安装系统时,一般不会考虑到默认排序的规则是拉丁文的排序规则,只是点击下一步,在 ...
- mysql的latin1_MySQL编码latin1转utf8
mysql移植含有中文的数据时,很容易出现乱码问题.很多是在从mysql4.x向mysql5.x移植的时候出现.mysql的缺省字符集是 latin1,在使用mysql4.x的时候,很多人都是用的la ...
- mysql字符集latin1_mysql的latin1字符集支持所有字符集
1. 先来看看latin1 (参考百度百科) Latin1是ISO-8859-1的别名,有些环境下写作Latin-1. ISO-8859-1编码是单字节编码,向下兼容ASCII,其编码范围是0x00- ...
- MySQL之数据库基字符集,中文乱码,大小写敏感,Packet for query is too large
目录 1 数据库字符集选择 1.1 utf8和utfmb4区别 1.2 排序检验规则 1.2.1 COLLATE介绍 1.2.2 常见排序示例 1.2.3 创建表时使用字符集和校验规则 1.2.4 在 ...
- Mysql自动超时重连导致的中文乱码问题
Mysql自动超时重连导致的中文乱码问题 今天有客户反应从自选股服务器获取的自定义板块中文名称乱码,之前一直都是正常的.看到乱码两字,头脑中首先冒出来的就是查看mysql数据库中的编码集,输入SHOW ...
- mysql 恢复数据库乱码了_再谈MySQL数据库备份恢复和乱码问题
在我转到wordpress之后第一个考虑的是它的数据库备份恢复问题,因为写bloger都知道,自己的blog记录的都是自己需要的宝贵的资料和文字,如果因为各种未知因素导致数据库崩溃或者空间商出了问题, ...
- mysql 数据库备份 乱码_再谈 MySQL 数据库备份恢复和乱码问题
在我转到wordpress之后第一个考虑的是它的数据库备份恢复问题,因为写bloger都知道,自己的blog记录的都是自己需要的宝贵的资料和文字,如果因为各种未知因素导致数据库崩溃或者空间商出了问题, ...
- sqlalchemy mysql 乱码_SQLAlchemyMySQL数据库乱码解决
今天对clubot进行了升级, 但是导入数据后中文乱码, 一开是找资料说是在创建引擎的时候添加编码信息: engine = create_engine("mysql://root:@loca ...
最新文章
- [LeetCode]题解(python):108-Convert Sorted Array to Binary Search Tree
- Xamarin Essentials教程地理定位Geolocation
- mysql-sql优化--笔记
- msm8937+android7.1系统播放某个MP4文件在data分区下创建ramdump并生成很多elf文件问题
- MySQL 全文索引实现简单版搜索引擎
- 设置progressbar进度条颜色
- ASP.NET安全[开发ASP.NET MVC应用程序时值得注意的安全问题](转)
- 如何做到 byte[] 和 十六进制 互转?
- Codeforces Round #737 (Div. 2)
- 同方专转本计算机视频,同方2011专转本计算机
- 如何关闭借呗订阅开通通知_支付宝花呗借呗隐藏规则,芝麻分600以上,花呗3.6万,借呗12万!...
- 设定open_basedir导致PHP程序无法上传
- 数据绑定概述(MSDN)
- Emacs 配置 Python 编程环境
- spring视频教程下载
- 怎么重置计算机网络设置密码,怎么重新设置wifi密码_如何重新设置无线密码?-192路由网...
- BUU MISC(5_10-5_14)
- QT5鼠标触摸屏键盘支持
- linux cp 中文文件名,linux下将中文文件名文件cp到windows目录下后文件名乱码问题的解决...
- JD2016版首页改版前端总结(转载整理)