Mysql WordPress表情符号在数据库迁移后消失了

Mysql WordPress表情符号在数据库迁移后消失了,mysql,wordpress,migration,emoji,Mysql,Wordpress,Migration,Emoji,我已经迁移了我的db,现在缺少一些表情符号: 在dump.sql文件中,我可以看到表情符号,但在导入过程中,某些表情符号被破坏,我使用以下脚本导入: 有什么想法吗?这是一个老问题,但为未来读者解答。UTF8在其他平台上简单且通用,但MySQL对UTF8的支持还不成熟,这使得它变得不必要的复杂。在MySQL中,utf8实际上是utf8mb4,而不是utf8(!!)。在这种奇怪和WordPress自己的utf8与utf8mb4支持之间,有几件事需要研究 检查您的wp config.php是否有d

我已经迁移了我的db,现在缺少一些表情符号:

在dump.sql文件中,我可以看到表情符号,但在导入过程中,某些表情符号被破坏,我使用以下脚本导入:


有什么想法吗?

这是一个老问题,但为未来读者解答。UTF8在其他平台上简单且通用,但MySQL对UTF8的支持还不成熟,这使得它变得不必要的复杂。在MySQL中,utf8实际上是
utf8mb4
,而不是
utf8
(!!)。在这种奇怪和WordPress自己的utf8与utf8mb4支持之间,有几件事需要研究

  • 检查您的
    wp config.php
    是否有
    define('DB_CHARSET','utf8mb4')一些备份脚本在决定导入到导出后的字符集时使用此选项

  • 在迁移/备份SQL脚本中进行文本搜索,查找
    集合名称utf8
    。它将作为可执行注释,如
    /*!40101集合名称utf8*/。无论哪种方式,都可以将
    utf8
    更改为
    utf8mb4
    ,然后重试迁移

  • 打开备份/迁移SQL脚本并检查
    创建表中是否有正确的
    CHARSET=utf8mb4

  • 最后,在真正的文本编辑器(如notepad++或VS Code)中打开.SQL脚本,并进行文本搜索,查看备份本身是否存在表情符号。例如:如果你有“我们的平台很快”