解决mysql中文乱码

我之前在使用mysql的时候,遇到了这类问题,网上看了诸多文章后,总结出以下方案。本文包含了windows和mac版下的mysql中文乱码解决方案,mysql的版本是5.7

windows

修改my.ini配置,路径:C:\ProgramData\MySQL\MySQL Server 5.6\my.ini

配置内容如下:

[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
character-set-server=utf8

分别在[client] 、[mysql]、[mysqld] 下面增加如上配置即可
请注意这几个参数配置的位置,不然可能会启动不起来mysql服务

这是后可以使用命令show variables like '%char%';查看编码情况

mysql> show variables like '%char%';
+--------------------------+---------------------------------------------------------+
| Variable_name            | Value                                                   |
+--------------------------+---------------------------------------------------------+
| character_set_client     | gbk                                                     |
| character_set_connection | gbk                                                     |
| character_set_database   | utf8                                                    |
| character_set_filesystem | binary                                                  |
| character_set_results    | gbk                                                     |
| character_set_server     | utf8                                                    |
| character_set_system     | utf8                                                    |
| character_sets_dir       | C:\Program Files\MySQL\MySQL Server 5.6\share\charsets\ |
+--------------------------+---------------------------------------------------------+
8 rows in set (0.00 sec)

另外我们在创建database的时候最好也指定编码
例如:

CREATE dababase dbname CHARACTER SET utf8 COLLATE utf8_general_ci

mac os x

在/etc目录下,使用管理员权限新建文件my.cnf,并输入以下配置:

[client]
default-character-set=utf8
[mysqld]
character-set-server=utf8

保存退出后,重启mysql。mac os x的mysql重启在偏好设置中


解决mysql中文乱码_第1张图片
系统偏好设置
解决mysql中文乱码_第2张图片

你可能感兴趣的:(解决mysql中文乱码)