1.查看mysql字符集编码
终端 >mysql
登录成功后查看编码:mysql>show variables like 'character%';
+--------------------------+--------------------------------------------------------+
| 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.6.27-osx10.8-x86_64/share/charsets/ |
+--------------------------+--------------------------------------------------------+
8 rows in set (0.00 sec)
如果上面的列表选择对应的值不为utf8,那把mysql安装目录(/usr/local/mysql)下的my.cnf 复制到/etc/目录下 $ sudo cp /usr/local/mysql/my.cnf /etc/
然后 sudo vim /etc/my.cnf 编辑my.cnf 文件,用vim的查找命令找到[mysqld] 这一行,在其后面添加如何设置:
default-storage-engine=INNODB
character-set-server=utf8
collation-server=utf8_general_ci
然后添加
[client]
default-character-set=utf8
好了,添加好以上设置,ctrl+[ 退出vim编辑模式 :wq 保存退出,然后重启(可能在mac的系统偏好设置最下面找到mysql的图标)mysql服务,再次去查询字符设置如上面的就OK
2.重新创建数据库,其字符集为utf8
mysql>create database db_name character set utf8;
创建好你的数据库后 mysql>use db_name;
查看你的库的编码是否正确 :mysql>status;
mysql Ver 14.14 Distrib 5.6.27, for osx10.8 (x86_64) using EditLine wrapper
Connection id: 183
Current database: db_name
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.6.27 MySQL Community Server (GPL)
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
UNIX socket: /tmp/mysql.sock
Uptime: 42 min 29 sec
Threads: 4 Questions: 1451 Slow queries: 0 Opens: 116 Flush tables: 1 Open tables: 85 Queries per second avg: 0.569
--------------
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
经过上面2步我的终端和MySQL Workbench 就能正常显示中文了~~