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

#1273 – Unknown collation: ‘utf8mb4_unicode_520_ci’

任何帮助都将不胜感激!


当前回答

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

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

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

其他回答

移除“520_” utf8mb4_unicode_520_ci→utf8mb4_unicode_ci

在我的例子中,我像这样用sed替换utf8_general_ci:

sed -i 's/utf8mb4_0900_ai_ci/utf8_general_ci/g' MY_DB.sql 
sed -i 's/utf8mb4_unicode_520_ci/utf8_general_ci/g' MY_DB.sql 

之后,我就可以导入了。

我刚打开垃圾箱。并按CTRL+H找到并替换字符串“utf8mb4_0900_ai_ci”,并将其替换为“utf8mb4_general_ci”。来源链接https://www.freakyjolly.com/resolved-when-i-faced-1273-unknown-collation-utf8mb4_0900_ai_ci-error/

我相信这个错误是因为本地服务器和活动服务器正在运行不同版本的MySQL。要解决这个问题:

在文本编辑器中打开sql文件 用utf8mb4_unicode_ci替换所有utf8mb4_unicode_ci 保存并上传到一个新的mySql数据库

我只是删除了COLLATE和其他属性,只留下了ENGINE。 像下面这样

来自:

ENGINE=InnoDB AUTO_INCREMENT=429 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci

TO:

ENGINE=InnoDB;

这对我来说很有效。