为了存储emoji表情,需要将mysql数据库编码由默认的utf8转为utf8mb4。
windows server 2012r2mysql5.7
在…\ProgramData\MySQL\MySQL Server 5.7目录下找到my.ini,增加以下内容。(PS:可能是隐藏文件夹。)
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
character-set-client-handshake=FALSE
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'
重启数据库服务,查询编码集。
SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%';
结果如下图:

必须保证以下属性变为utf8mb4:
| 系统变量 | 描述 |
|---|---|
| character_set_client | 客户端来源数据使用的字符集 |
| character_set_connection | 连接层字符集 |
| character_set_database | 当前选中数据库的默认字符集 |
| character_set_results | 查询结果字符集 |
| character_set_server | 默认的内部操作字符集 |
***注意:***最好在mysql命令行中查询编码集结果,第三方工具可能由于客户端请求编码设置的原因查询结果不正确。
2967





