我在本地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。

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

其他回答

对我来说,这是我的 新服务器运行MySQL 5.5, 旧服务器运行的是MySQL 5.6。 因此,当我试图导入我从旧服务器导出的.sql文件时,我得到了这个错误。

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

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

如果你想保留MySQL 5.5,你可以: -复制导出的.sql文件 -替换utf8mb4unicode520_ci和utf8mb4_unicode_520_ci实例 ...与utf8mb4_unicode_ci -导入更新后的.sql文件。

1273 -未知排序:'utf8mb4_0900_ai_ci'

在我的情况下,我无法导入DB使用

ENGINE = InnoDB AUTO_INCREMENT = 1 DEFAULT CHARSET = utf8 COLLATE = utf8_general_ci;

and

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;

移除“520_” utf8mb4_unicode_520_ci→utf8mb4_unicode_ci

你可以通过求

ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci;

在你的。sql文件中,并与

ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

我刚打开垃圾箱。并按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/