我正在将我的 WordPress 博客和 phpBB 论坛迁移到新的托管服务器。我正在使用 phpMyAdmin 从上一个站点的数据库中导入 SQL 脚本。
当我用 Kate 打开 .sql 脚本时,它说它使用 UTF8 作为编码。当我在新服务器中导入 sql 时,我可以在 phpMyAdmin 中选择编码,默认情况下选择 utf8。
仍然,当我导入完数据库后,我直接在phpMyAdmin中读取帖子文本,看到“é”,“ñ”等字符没有被“解释”并被奇怪的字符替换已安装。
我可以看到我的 WordPress 安装也无法正常工作。显然这个编码有问题,但我认为问题出在 MySQL 数据库或 phpMyAdmin 而不是 WordPress。
MySQL 的版本几乎相同,即 MySQL 5,但修订版不同。还有,迁移论坛数据库的时候也没有问题,这就更奇怪了……
我不知道如何解决这个问题...欢迎提出任何想法。
最佳答案
你试过添加
SET NAMES 'utf8';
到你的 sql 转储?
utf8 或一般编码的问题是,为了成功,您必须确保:
- 文件编码为utf8,无签名
- mysql服务器默认编码为utf8
- 连接是 utf8(这就是你将 SET NAMES 'utf8' 放入你的 sql 文件的原因)。
- 所有表格和列都有正确的编码和字符集
- 您所有的网络文件也必须是 utf8 编码的。而且仅仅添加正确的标题是行不通的。您必须打开文件,检查编码是否为 utf8,如果不是,则剪切所有内容,将编码更改为 utf8,然后将所有内容粘贴回去。如果您只是更改编码并保存文件,那是行不通的!
关于mysql - MySQL 5 的 UTF8 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/346531/