我在本地WAMP服务器上有一个WordPress网站。但当我上传它的数据库到活服务器,我得到错误
#1273 – Unknown collation: ‘utf8mb4_unicode_520_ci’
任何帮助都将不胜感激!
我在本地WAMP服务器上有一个WordPress网站。但当我上传它的数据库到活服务器,我得到错误
#1273 – Unknown collation: ‘utf8mb4_unicode_520_ci’
任何帮助都将不胜感激!
当前回答
我经历了一个挑战,导入数据到mysql导出使用mysql工作台。这是一个整理问题。 我通过以下方法解决了这个错误:
使用文本编辑器打开.sql文件 将“utf8mb4_0900_ai_ci”替换为“utf8mb4_general_ci” 将文件保存为.sql并导入
它工作
其他回答
移除“520_” utf8mb4_unicode_520_ci→utf8mb4_unicode_ci
虽然有点晚了,但以防WORDPRESS安装出现这种情况:
#1273 -未知排序:'utf8mb4_unicode_520_ci
在phpmyadmin中,导出方法>格式特定选项(自定义导出)
设置为:MYSQL40
如果你现在尝试导入,你现在可能会得到另一个错误消息:
1064 -你的SQL语法错误;…
这是因为在MySQL 5.5中,与ENGINE同义的旧TYPE选项被删除了。
打开.sql文件,搜索并替换所有实例
从TYPE=到ENGINE=
现在导入应该很顺利了。
很奇怪,所有的答案都建议替换排序规则。这是一个非常糟糕的做法,因为您希望使用与开发中的和生产中的相同的MySQL版本。因此,您本地的mysql服务器应该是相同的。
首先,执行查询SHOW COLLATION以检查服务器支持的所有排序规则。如果你使用xampp或其他类似的工具来启动你的服务器,它可能是附带的maria db服务器而不是mysql服务器。
你应该做的是用真正的mysql替换你当前的mysql(实际上是mariadb)。
所以你要做的就是用mysql服务器替换你的maria db服务器。
在我的例子中,我像这样用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
之后,我就可以导入了。
简单的替换
sed -i 's/utf8mb4_unicode_520_ci/utf8mb4_unicode_ci/g' your_sql_file.sql