mysql5.7 编码统一utf-8

查看mysql数据库编码:

show variables like 'character%';

mysql> show variables like 'character%';
+--------------------------+-------------------------------------------------+
| Variable_name            | Value                                           |
+--------------------------+-------------------------------------------------+
| character_set_client     | gbk                                             |
| character_set_connection | gbk                                             |
| character_set_database   | latin1                                          |
| character_set_filesystem | binary                                          |
| character_set_results    | gbk                                             |
| character_set_server     | latin1                                          |
| character_set_system     | utf8                                            |
| character_sets_dir       | E:Developmysql-5.7.15-winx64sharecharsets |
+--------------------------+-------------------------------------------------+
8 rows in set, 1 warning (0.00 sec)

mysql>

可以看出database和server都采用了latin1编码,不支持中文,我们需要把它修改为utf-8。

除了这两个,其它的如下:

| 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       | E:Developmysql-5.7.15-winx64sharecharsets

在mysql安装目录下,将 my-default.ini 复制一分保存为 my.ini 
做如下修改

主要看红色框里的内容:

[mysqld]
character-set-server=utf8 
collation-server=utf8_general_ci 

[mysql]
default-character-set = utf8

[mysql.server]
default-character-set = utf8


[mysqld_safe]
default-character-set = utf8


[client]
default-character-set = utf8

结果,查看编码:

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       | E:Developmysql-5.7.15-winx64sharecharsets |
+--------------------------+-------------------------------------------------+
8 rows in set, 1 warning (0.00 sec)

mysql>

数据库实例编码设置:

mysql> show create database test;
+----------+-----------------------------------------------------------------+
| Database | Create Database                                                 |
+----------+-----------------------------------------------------------------+
| test     | CREATE DATABASE `test` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+----------+-----------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> alter database test default character set utf8;
Query OK, 1 row affected (0.00 sec)

mysql> show create database test;
+----------+---------------------------------------------------------------+
| Database | Create Database                                               |
+----------+---------------------------------------------------------------+
| test     | CREATE DATABASE `test` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+---------------------------------------------------------------+
1 row in set (0.00 sec)

mysql>

参考:http://blog.csdn.net/u013474104/article/details/52486880

原文地址:https://www.cnblogs.com/007sx/p/5965644.html