在Ubuntu中安裝MySQL,MySQL的編碼方式可能不是UTF8編碼,你可以通過如下方式進行設置。
1. 进入MySQL Client, 使用 mysql> show variables like "%character%";show variables like "%collation%"; 查看MySQL編碼方式。
如下所示:
mysql > show variables like "%character%" ; show variables like "%collation%" ;+ --------------------------+----------------------------+| Variable_name | Value |
+ --------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | / usr / share / mysql / charsets / |
+ --------------------------+----------------------------+
8 rows in set ( 0.00 sec )
+ ----------------------+-----------------+
| Variable_name | Value |
+ ----------------------+-----------------+
| collation_connection | utf8_unicode_ci |
| collation_database | utf8_unicode_ci |
| collation_server | utf8_unicode_ci |
+ ----------------------+-----------------+3 rows in set ( 0.00 sec )
注:如果出現Latin1編碼方式,存储中文信息可能出现乱码情况。
2. 在/etc目录下,找到my.cnf文件,用sudo方式打开,添加如下内容并存储文件。
3. 重新启动MySQL服务器, 进入$cd /etc/init.d目录,执行 $mysql.server restart命令。[ mysqld ]
init_connect = 'SET collation_connection = utf8_general_ci'
init_connect = 'SET NAMES utf8'
character-set-server = utf8
collation-server = utf8_general_ci
skip-character-set-client-handshake
4. 使用(1)中的命令再次查看MySQL编码方式,如结果如下,证明编码方式修改成功。
mysql > show variables like "%character%" ; show variables like "%collation%" ;
+ --------------------------+----------------------------+
| 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 |
| character_sets_dir | / usr / share / mysql / charsets / |
+ --------------------------+----------------------------+
8 rows in set ( 0.00 sec )
+ ----------------------+-----------------+
| Variable_name | Value |
+ ----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database | utf8_general_ci |
| collation_server | utf8_general_ci |
+ ----------------------+-----------------+