MySQL中文乱码问题解决之道
2012-03-05 20:04
183 查看
今天第一次用MySQL,遇到了中文乱码问题,问题描述如下:
直接通过Navicat编辑不会出现乱码,通过JDBC插入以及读取的中文乱码。
因为之前用过Oracle,于是尝试找到MySql的配置文件。我用的是MySQL 5.5,在其安装目录下找到my.ini,
设置default-character-set=gb2312
以为这样改了就好了,可是测试还是乱码,接着试了utf-8,gbk均不行。
如此这般,不知如何下手了。然后再网上查了一些资料,有的帖子说要重启服务,有的帖子说要将建好的数据库删除,设置后重新建立,都试了,还是不行。
最终问题的解决关键在于发现了my.ini中的另外一个字段character-set-server,必须对这个字段进行设置。
总结一下问题的解决步骤:
1 找到my.ini文件,设置数据库编码方式,两个字段都要进行设置。
default-character-set=gb2312
character-set-server=gb2312 (此处配置成utf-8应该也可以的)
设置完成后,如果依然是乱码,继续下面的步骤。
2 重启mysql服务。
如果依然乱码,继续。
3 将表导出,删除已有数据库。
4 重新建立数据库,导入表。
xp和win7环境下这样操作乱码问题均得到解决。
一些在解决过程中可能用得上的命令:
mysql> alter table content modify author varchar(30) character set gb2312;
将某张表的中指定的某个列进行全部设置
mysql> show variables like '%set%'
查看当前的编码格式这只
直接通过Navicat编辑不会出现乱码,通过JDBC插入以及读取的中文乱码。
因为之前用过Oracle,于是尝试找到MySql的配置文件。我用的是MySQL 5.5,在其安装目录下找到my.ini,
设置default-character-set=gb2312
以为这样改了就好了,可是测试还是乱码,接着试了utf-8,gbk均不行。
如此这般,不知如何下手了。然后再网上查了一些资料,有的帖子说要重启服务,有的帖子说要将建好的数据库删除,设置后重新建立,都试了,还是不行。
最终问题的解决关键在于发现了my.ini中的另外一个字段character-set-server,必须对这个字段进行设置。
总结一下问题的解决步骤:
1 找到my.ini文件,设置数据库编码方式,两个字段都要进行设置。
default-character-set=gb2312
character-set-server=gb2312 (此处配置成utf-8应该也可以的)
设置完成后,如果依然是乱码,继续下面的步骤。
2 重启mysql服务。
如果依然乱码,继续。
3 将表导出,删除已有数据库。
4 重新建立数据库,导入表。
xp和win7环境下这样操作乱码问题均得到解决。
一些在解决过程中可能用得上的命令:
mysql> alter table content modify author varchar(30) character set gb2312;
将某张表的中指定的某个列进行全部设置
mysql> show variables like '%set%'
查看当前的编码格式这只
相关文章推荐
- 程序读mysql中文乱码问题解决方法
- php+mysql的utf-8中文乱码问题的解决方法
- 解决MySQL中文乱码问题|PHP+MySQL
- 解决mysql无法插入中文数据及插入后显示乱码的问题
- XAMPP集成环境下Apache端口占用、MySQL密码及其各种中文字符乱码问题解决汇总
- MySQL 插入数据时,中文乱码问题的解决(转)
- MySQL 插入数据时,中文乱码问题的解决
- MySQL字符集 GBK、GB2312、UTF8区别 解决 MYSQL中文乱码问题
- CentOS 6.5安装MySQL中文乱码问题解决
- 解决mysql 中文乱码问题
- 解决mysql中文乱码问题
- 完美解决Hibernate与MySQL中文乱码问题
- Linux下MySQL5.6的修改字符集编码为UTF8(解决中文乱码问题)
- MySQL 插入数据时,中文乱码问题的解决
- mysql5.0中文插入乱码问题解决
- Ubuntu下MySQL中文乱码的问题解决
- Linux下MySQL 5.5的修改字符集编码为UTF8(彻底解决中文乱码问题)
- 解决mysql中文乱码的问题
- mysql字符编码并解决中文乱码问题
- MySQL字符集中文乱码终极解决方案和mysql查询中文问题解决方法[转贴]