MySQL 服务器无法存 Emoji 表情的解决方案 - 文章教程

MySQL 服务器无法存 Emoji 表情的解决方案

发布于 2020-03-26 字数 1044 浏览 1044 评论 0

utf8 是三字节,utf8mb4 是 4 字节而,emoji 表情也是 4 字节,修改 mysql 配置文件 my.cnf

[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'

重启 MySQL Server,在mysql命令行中输入:

SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%'

总结:

  1. 对于 mysql 字符集我们不想出现乱码情况有一个经验就是 character_set_client、character_set_connection、character_set_results 字符尽量设置成一致的。
  2. mysql 的字符集的作用域有三个层级一个数据库级,一个是表级,一个是列级(字段级别的)。优先级是:列级》表级》数据库级。从优先级知道如果存 emoji 的那个字段不是 utf8mb4 字符集,那么即使数据库是 utf8mb4 也是无济于事的。

最后逐步修改数据库,数据表、字段。

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

目前还没有任何评论,快来抢沙发吧!

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

2583 文章
29 评论
84935 人气
更多

推荐作者

清风夜微凉

文章 1 评论 0

为你鎻心

文章 2 评论 0

xxhui

文章 0 评论 0

1PKOH46yx8j0x

文章 0 评论 0

Arthur

文章 0 评论 0