#1273 - 未知校对:'utf8mb4_unicode_520_ci'

时间:2017-02-22 07:23:16

标签: mysql sql wordpress collation

我的本​​地 WAMP 服务器上有一个WordPress网站。但是当我将其数据库上传到实时服务器时,我收到错误

#1273 – Unknown collation: ‘utf8mb4_unicode_520_ci’

任何帮助将不胜感激!

15 个答案:

答案 0 :(得分:228)

我认为这个错误是由于本地服务器和实时服务器运行不同版本的MySQL而引起的。要解决这个问题:

  1. 在文本编辑器中打开sql文件
  2. 使用utf8mb4_unicode_520_ci
  3. 查找并替换所有utf8mb4_unicode_ci
  4. 保存并上传到新的mySql db
  5. 希望有助于enter image description here

答案 1 :(得分:139)

您可以通过查找

来解决此问题
ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci;

在您的.sql文件中,并使用

进行交换
ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

答案 2 :(得分:44)

在我的情况下,结果是我的 新服务器正在运行QProcess.error
旧服务器正在运行MySQL 5.5 因此,在尝试导入从旧服务器导出的MySQL 5.6文件时出现此错误。

MySQL 5.5不支持.sql,但是支持 MySQL 5.6可以。

在新服务器上更新到utf8mb4_unicode_520_ci解决了整理错误!

如果你想保留MySQL 5.5,你可以:
- 制作导出的MySQL 5.6文件的副本
- 替换.sqlutf8mb4unicode520_ci的实例 ...... utf8mb4_unicode_520_ci - 导入更新的utf8mb4_unicode_ci文件。

答案 3 :(得分:14)

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

<强> 1。搜索: utf8mb4_unicode_ci 替换: utf8_general_ci (全部替换)

<强> 2。搜索: utf8mb4_unicode_520_ci 替换: utf8_general_ci (全部替换)

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

保存并上传!

答案 4 :(得分:8)

只需删除&#34; 520 _&#34;
utf8mb4_unicode_520_ciutf8mb4_unicode_ci

答案 5 :(得分:8)

轻松更换

sed -i 's/utf8mb4_unicode_520_ci/utf8mb4_unicode_ci/g' your_sql_file.sql

答案 6 :(得分:5)

查找并替换:

utf8mb4_unicode_520_ci

utf8_general_ci

在整个sql文件中

答案 7 :(得分:4)

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

答案 8 :(得分:1)

就我而言,我用utf8_general_ci替换为sed,如下所示:

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

在那之后,我可以毫无问题地导入它。

答案 9 :(得分:0)

迟到聚会,但是如果安装WORDPRESS时发生这种情况:

#1273 - Unknown collation: 'utf8mb4_unicode_520_ci

在phpmyadmin中,在export method> Format-specific options(自定义导出)下

设置为:MYSQL40

如果您现在尝试导入,则现在可能会收到另一条错误消息:

1064 - You have an error in your SQL syntax; .....

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

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

TYPE=ENGINE=

现在导入应该顺利进行。

答案 10 :(得分:0)

获取排序规则错误#1273-未知的排序规则:“ utf8mb4_unicode_520_ci”是由您导出的MySQL版本和导入的MySQL服务器的不同引起的。基本上,较新版本的Wordpress库会检查您的网站正在运行的SQL版本。如果使用MySQL 5.6或更高版本,则假定使用名为“ utf8mb4_unicode_520_ci”的新的和改进的Unicode排序算法(UCA)。除非您最终将WordPress网站从MySQL的5.6较新版本迁移到MySQL的5.6之前的较旧版本,否则这是很好的选择。

要解决此问题,您将不得不编辑SQL导出文件并进行搜索和替换,将所有“ utf8mb4_unicode_520_ci”实例更改为“ utf8mb4_unicode_ci”。或者,如果您有PHPMyAdmin,请按照以下步骤操作:

  1. 单击数据库的“导出”选项卡
  2. 单击“自定义”单选按钮。
  3. 转到标题为“特定于格式的选项”的部分,并更改“数据库系统”或旧版MySQL服务器的下拉菜单,以最大程度地利用以下内容实现输出兼容性:从NONE到MYSQL40。
  4. 滚动到底部,然后单击“执行”。

答案 11 :(得分:0)

我刚刚在Notepad ++中打开dump.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/

答案 12 :(得分:0)

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

来自:

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

致:

ENGINE=InnoDB;

它对我来说很好。

答案 13 :(得分:0)

1273 - 未知排序规则:'utf8mb4_0900_ai_ci'

就我而言,我无法使用

导入数据库
ENGINE = InnoDB AUTO_INCREMENT = 1 DEFAULT CHARSET = utf8 COLLATE = utf8_general_ci;

ENGINE = InnoDB AUTO_INCREMENT = 1 DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci;

两者兼而有之。但是在.SQL文件中改成这个就解决了问题

ENGINE=InnoDB DEFAULT CHARSET=latin1;

更新

使用'utf8mb4_general_ci'解决了问题

ENGINE = InnoDB AUTO_INCREMENT = 1 DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_general_ci;

答案 14 :(得分:0)

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

  • 在任何文本编辑器中打开 sql 文件

  • 找到并用 utf8mb4_unicode_ci 替换所有 utf8mb4_0900_ai_ci

  • 保存并尝试新的 mySql 数据库文件

之后再试一次,它对我来说很好 enter image description here