1,檢查默認安裝的MySQL的字符集
MySQL> show variables like '%char%';
+--------------------------+--------------------------------------------------------+
| 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/local/MySQL-5.5.23-osx10.6-x86_64/share/charsets/ |
+--------------------------+--------------------------------------------------------+
8 rows in set (0.00 sec)
character_set_database和character_set_server依然是latin1的字符集,也就是說mysql後續創建的表都是latin1字符集的,不是utf8,會造成一些麻煩。所以有必要修改my.cnf,在修改my.cnf之前一定要關閉mysql進程,不然會遇到MySQL的sock不能連接的問題。
2,關閉MySQLd後台進程
系統偏好設置裡面控制mysqld,避免了去找MySQLd安裝位置的麻煩。
點擊 Stop MySQL Server
3,修改MySQL配置文件/etc/my.cnf
sudo cp /usr/local/MySQL/support-files/my-medium.cnf /etc/my.cnf
sudo vi /etc/my.cnf
[clIEnt]部分加入:
default-character-set=utf8
[MySQLd]部分加入:
character-set-server=utf8
修改完畢之後再啟動MySQL
4,檢查結果:
MySQL> show variables like '%char%';
+--------------------------+--------------------------------------------------------+
| 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/local/MySQL-5.5.23-osx10.6-x86_64/share/charsets/ |
+--------------------------+--------------------------------------------------------+
8 rows in set (0.00 sec)
修改完畢#