我在本地WAMP服务器上有一个WordPress网站。但当我上传它的数据库到活服务器,我得到错误

#1273 – Unknown collation: ‘utf8mb4_unicode_520_ci’

任何帮助都将不胜感激!


当前回答

虽然有点晚了,但以防WORDPRESS安装出现这种情况:

#1273 -未知排序:'utf8mb4_unicode_520_ci

在phpmyadmin中,导出方法>格式特定选项(自定义导出)

设置为:MYSQL40

如果你现在尝试导入,你现在可能会得到另一个错误消息:

1064 -你的SQL语法错误;…

这是因为在MySQL 5.5中,与ENGINE同义的旧TYPE选项被删除了。

打开.sql文件,搜索并替换所有实例

从TYPE=到ENGINE=

现在导入应该很顺利了。

其他回答

经过一番调查,我发现在目标服务器上运行的MySQL服务器的版本比源服务器的版本要旧。因此,我们知道目标服务器不包含所需的数据库排序规则。

然后我们在备份文件中做一点调整来解决这个问题。在文本编辑器中编辑数据库备份文件(your_sql_file.sql),将utf8mb4_0900_ai_ci替换为utf8mb4_general_ci,将CHARSET=utf8mb4替换为CHARSET=utf8。

我希望这个解决方案能帮助到你。

使用sed命令直接替换文件中的文本

Linux OS

sed -i 's/utf8mb4_unicode_520_ci/utf8mb4_general_ci/g' YOUR_SQL_FILE.sql

苹果操作系统

sed -i '' s/utf8mb4_unicode_520_ci/utf8mb4_general_ci/g' YOUR_SQL_FILE.sql

这个命令的帮助下,我在第51行修复了错误1273 (HY000):未知排序:'utf8mb4_0900_ai_ci'

此错误是由于MySQL不同版本的冲突引起的。要解决这个问题:

在任何文本编辑器中打开sql文件 用utf8mb4_unicode_ci替换所有utf8mb4_0900_ai_ci 保存并尝试新的mySql db文件

之后再试一次,对我来说很好

你可以通过求

ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci;

在你的。sql文件中,并与

ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

查找和替换:

utf8mb4_unicode_520_ci

with

utf8_general_ci

在整个SQL文件中