mysql配置文件更改:
ubuntu:/etc/mysql/my.cnf
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
重启服务
sudo /etc/init.d/mysql restart
执行命令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_unicode_ci |
| collation_database | utf8_unicode_ci |
| collation_server | utf8_unicode_ci |
+----------------------+-----------------+
如果还是中文乱码,可能是数据库建立的时候使用的是默认编码latin
用一下语句可以更改字段的编码:
ALTER TABLE `${table}` CHANGE `${column}` `${column}` VARCHAR( 45 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL
其他:
${table},${column},${db} 这个是什么你们懂得