wordpress表情符号在数据库迁移之后消失了

von4xj4u  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(482)

我已经迁移了数据库,现在缺少一些表情符号:
https://i.imgur.com/fqvo4lo.png
在dump.sql文件中,我可以看到emoji,但在导入过程中,有些东西正在破坏一些emoji,我使用以下脚本导入:
https://korobochkin.wordpress.com/2017/02/25/import-and-export-wordpress-database-with-utf8mb4-charset/
有什么想法吗?

qmb5sa22

qmb5sa221#

这是一个老问题,但回答未来的读者。utf8在其他平台上简单且通用,但mysql对utf8的支持还不成熟,这使得它变得不必要的复杂。在mysql中,utf8实际上是 utf8mb4 而不是 utf8 (!!). 在这种奇怪和wordpress自己的utf8对utf8mb4的支持之间,有几点需要研究。
检查您的 wp-config.php 如果它有 define('DB_CHARSET', 'utf8mb4'); 一些备份脚本在决定要导入哪些字符集以进行后期导出时使用此选项。
在迁移/备份sql脚本中进行文本搜索 SET NAMES utf8 . 它将作为一个可执行的注解,如 /*!40101 SET NAMES utf8 */; . 不管怎样,改变 utf8 在那里 utf8mb4 然后重试迁移
打开备份/迁移sql脚本并检查 CREATE TABLE 我们有正确的答案 CHARSET=utf8mb4 在他们身上。
最后,在一个真正的文本编辑器(如notepad++或vs代码)中打开.sql脚本,并进行文本搜索,以查看emoji是否存在于备份本身中。例如:如果你在原来的wordpress页面的某个地方有“我们的平台是快的”,在sql备份中搜索“我们的平台是快的”,看看你是否有????或者?在那之后的.sql文件中。
除此之外,现在是时候看看你的mysql设置了,看看这个问题/答案

相关问题