外文系统中MySQL乱码解决方案
编码设定更改
在外文系统下,使用MySQL作为数据库开发网站会遇到中文显示的问题。其中一个原因可能是MySQL编码设定导致的。MySQL默认的字符集编码是latin1。你可以登录到MySQL执行:show variables like ‘character%’;来查看数据库系统当前的编码方式,一般情况下,你会看到如下所示:
+————————–+—————————-+
| Variable_name | Value |
+————————–+—————————-+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+————————–+—————————-+
很显然,我们需要修改UTF-8。
解决方法
进入mysql的安装目录,打开my.ini文件。
在客户端配置[client]下面添加:
default-character-set=utf8
在[mysqld]后面添加
character_set_server=utf8
character_set_client=utf8
重新启动MySQL。
你可以再次登录到MySQL执行:show variables like ‘character_set/_%’;来查看数据库系统当前的编码方式,你会看到如下所示:
+--------------------------+--------+
| Variable_name | Value |
+--------------------------+--------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
+--------------------------+--------+
OK,你已经解决了MySQL中文编码问题。
注意点:
之前生成的数据库和数据库表依然还是原先的编码方式