让ZBlog支持emoji表情

2021-09-23 09:22:03  阅读 2198 次 评论 1 条

由于前期建站不注意细节,建立数据库的时候选择了utf8编码。导致了不能保存emoji,近期也有小伙伴反馈此问题,目前已经修复。本篇文章带你了解主流博客系统如何修改编码来支持emoji表情

首先,最重要的:备份数据库,备份数据库,备份数据库

不备份出了问题不要怪我哦~

第二,检查自己的mysql版本,5.5.3以上的,可以继续阅读本文章,低于5.5.3的请升级版本

查看方法,执行以下命令,看返回结果:

select version();

返回结果示例:

mysql> select version();
+-----------+
| version() |
+-----------+
| 5.7.17    |
+-----------+
1 row in set (0.01 sec)

3、修改服务器上mysql默认编码,修改数据库、表、列的字符集为utf8mb4

修改服务器上mysql配置文件my.conf(如ubuntu为例,一般在/etc/mysql/my.conf,Windows系统一般是在mysql安装目录的my.ini):

[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

改完后,请重启mysql,并检查utf8mb4是否生效。

通过SQL查询:

SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';


修改数据库、表、列字符集:

大体上是这样的:

ALTER DATABASE [数据库名称] CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;
ALTER TABLE [表名] CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

z-blog:

(表名我用默认的zbp_的前缀来进行操作,修改前缀的请根据你实际的表名操作),

数据库名我就用zblog了,大家根据自己的实际情况来:

ALTER DATABASE zblog CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;

ALTER TABLE `zbp_post` CHANGE `log_Title` `log_Title` VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '';

ALTER TABLE `zbp_post` CHANGE `log_Intro` `log_Intro` TEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL;

ALTER TABLE `zbp_post` CHANGE `log_Content` `log_Content` LONGTEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL;

ALTER TABLE `zbp_comment` CHANGE `comm_Content` `comm_Content` TEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL;

也可以手动操作:

  1. phpmyadmin或是其它数据库管理工具,连接本数据库,

  2. 打开post文章表,修改log_Title,log_Intro,log_Content的排序规则为utf8mb4_general_ci

  3. comment评论表里的comm_Content也改为utf8mb4_general_ci

  4. 还有其它表里你认为需要的字段也改一下。

  5. 这样更改一下数据库就支持emoji表情啦???????????‍??‍?????????‍???‍♀️



微信扫码查看本文
本文地址:https://www.yangguangdream.com/?id=2168
版权声明:本文为原创文章,版权归 编辑君 所有,欢迎分享本文,转载请保留出处!

发表评论


表情

评论列表

  1. 访客
    访客  @回复

    ?试一试,踩一踩。