日期:2014-05-16  浏览次数:20946 次

mysql中文乱码的解决方法

?? 之前我写过两篇解决mysql中文乱码的文章,这是两个有点不同的方法。这两篇文章为:

?

《mysql中文乱码——mysql配置文件的设置 》

《mysql 5.1.30中文乱码问题,解决方法 》

?

??? 综合这两篇文章,总结一下:

?

??? 1、要使mysql中文不乱码,首先一定要设置建立的数据库的字符集为utf8,如果在建立数据库的时候没有指明字符集,则会使用mysql默认的字符集。这时,如果mysql服务端的默认字符集不是utf8,则会输入中文会乱码。

?

??? 2、设置数据库的字符集为utf8之后,还要设置mysql客户端的字符集为utf8。这在mysql的配置文件my.ini(windows系统)中为[mysql]这一段。在这一段中输入以下内容,就可以设置mysql客户端的字符集为utf8:

?

default-character-set=utf8

?这个时候输入中文就不会乱码。

?

??? 3、如果建立数据库的时候没有指明字符集,并且mysql服务端的默认字符集不是utf8的话,就会中文乱码。这个时候就需要设置mysql的服务端的默认字符集为utf8或者重新建立数据库并且指明数据库的字符集为utf8。mysql的服务端字符集设置是在配置文件my.ini(windows系统)中为[mysqld]这一段。在这一段中,将default-character-set修改为如下内容:

?

default-character-set=utf8

?做了以上设置,并且重新启动mysql服务器,这个时候建立的数据库就不会出现中文乱码的情况。