如何在MySQL 5.7(windows)上设置utf8mb4

如何在MySQL 5.7(windows)上设置utf8mb4,mysql,windows,character-encoding,Mysql,Windows,Character Encoding,我在Windows7机器上安装了MySQL 5.7。 我需要更改数据库的字符集才能持久化表情符号 将配置导入my.ini: [client] default-character-set = utf8mb4 [mysql] default-character-set = utf8mb4 [mysqld] default-character-set = utf8mb4 character-set-client-handshake = FALSE character-set-server = ut

我在Windows7机器上安装了MySQL 5.7。 我需要更改数据库的字符集才能持久化表情符号

将配置导入my.ini:

[client]
default-character-set = utf8mb4

[mysql]
default-character-set = utf8mb4

[mysqld]
default-character-set = utf8mb4
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
在windows服务中,我看到加载的配置文件路径是正确的

使用查询查看数据库属性:

SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';
我得到了以下结果:

Variable_name   Value
character_set_client    utf8
character_set_connection    utf8
character_set_database  utf8mb4
character_set_filesystem    binary
character_set_results   utf8
character_set_server    utf8
character_set_system    utf8
collation_connection    utf8_general_ci
collation_database  utf8mb4_general_ci
collation_server    utf8_general_ci
因此,排序规则服务器、字符集系统、字符集服务器、字符集结果、字符集连接、字符集客户端的值是错误的

我怎样才能修好它们?
谢谢。

连接到MySQL后,执行
设置名称utf8mb4
。这将确定您的客户机正在使用完整的4字节编码进行读/写

您可以在my.cnf/my.ini中执行此操作:

init_connect = 'SET NAMES utf8mb4'
但请记住,当以root用户(或任何
SUPER
用户)身份连接时,
init\u connect
将被忽略

此外,表/列必须是
字符集utf8mb4