解决mysql中文乱码

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

windows

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

配置内容如下:

[mysqld]
character_set_server=utf8mb4
init_connect='SET NAMES utf8mb4'
default-time-zone='+08:00'

在[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,并输入以下配置:

[mysqld]
character_set_server=utf8mb4
init_connect='SET NAMES utf8mb4'
default-time-zone='+08:00'

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


系统偏好设置
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 以基于Servlet+Mysql构建网站为例,网页/数据库出现中文乱码的原因:数据在流动的任意节点处,编码不一致,...
    阿树阅读 722评论 0 4
  • 简单有效解决MySQL中文乱码的问题 1 查看MySQL的编码 使用 mysql -u root -p 登入mys...
    由木人_番茄阅读 577评论 0 1
  • mysql是我们项目中非常常用的数据型数据库。但是因为我们需要在数据库保存中文字符,所以经常遇到数据库乱码情况。下...
    三万_chenbing阅读 1,087评论 0 0
  • 1,打开mysql配置文件 2,加入配置 3,保存退出,重启mysql 4,登陆数据库 5,检查mysql字符命令...
    多喝酸奶阅读 1,059评论 0 0
  • 天苍苍,野茫茫,风吹草地见牛羊。 风萧萧,雨飘飘,电闪火光乌云降。 人纷纷,情飞飞,你我相逢便是缘。 ...
    樊辰阅读 207评论 0 3