日期:2014-05-16 浏览次数:21122 次
?
????? mysql的中文乱码已经翻来覆去碰到过几次了,这几天因为学习php+mysql开发,老朋友又见面了。
?
????? 记录下来,希望对大家有用。
?
????? mysql 是 ubunt 9.04下 lamp 里面自动安装的。
?
????? 配置文件在 /etc/mysql/ 下 ,my.conf,记得为这个文件做个备份先。
?
????? 碰到乱码的情况千奇百怪,不要被这些东西给弄晕了,要了解本质。
?
????? 先要知道两个mysql的命令: show?variables?like?'%character%';?????
????????????????????????????????????????????? show?variables?like?'%collation%';
?
????? 在未对数据库做任何配置的情况下, 数据库就是瑞典人(发明mysql)手上的东西,什么都是万恶的latin。这种情况下,中文肯定有乱码。
?
?????
?
?
?
???? 1. 首先需要在[mysqld]段加入一下代码改成:
????????? default-character-set=utf8
????????? 重启 mysql??
????? 情况会变成这样:
?
?
???? 2. 然后在[mysql]段加入一下代码改成:default-character-set=utf
???????? 重启mysql
???????? 那些latin,变为utf8
????? 情况会变成这样:
?
?
?
???? ps: 当然 使用命令
???????????? mysql>?SET?NAMES?'utf8'?;
???????????? Query?OK,?0?rows?affected?(0.00?sec)
????????????? 效果一样,不过重启之后,latin又会回来。
?
???? 至此,mysql中文乱码问题基本解决,如果还出现乱码,那极有可能,是在其它环节出了问题。
?
参考:
http://bbs.pfan.cn/post-207036.html
?
?
?
?
?
?
?
?