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

#1273 – Unknown collation: ‘utf8mb4_unicode_520_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 

之后,我就可以导入了。

其他回答

很奇怪,所有的答案都建议替换排序规则。这是一个非常糟糕的做法,因为您希望使用与开发中的和生产中的相同的MySQL版本。因此,您本地的mysql服务器应该是相同的。

首先,执行查询SHOW COLLATION以检查服务器支持的所有排序规则。如果你使用xampp或其他类似的工具来启动你的服务器,它可能是附带的maria db服务器而不是mysql服务器。

你应该做的是用真正的mysql替换你当前的mysql(实际上是mariadb)。

所以你要做的就是用mysql服务器替换你的maria db服务器。

移除“520_” utf8mb4_unicode_520_ci→utf8mb4_unicode_ci

我用这种方式解决了这个问题,我在记事本中打开。sql文件,单击CTRL + H找到并替换字符串“utf8mb4_0900_ai_ci”,并将其替换为“utf8mb4_general_ci”。

你可以通过求

ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci;

在你的。sql文件中,并与

ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

在文本编辑器中打开sql文件;

1. 搜索:utf8mb4_unicode_ci替换:utf8_general_ci(替换全部)

2. 搜索:utf8mb4_unicode_520_ci替换:utf8_general_ci(替换全部)

3.搜索:utf8mb4替换:utf8(替换全部)

保存并上传!