迁移至MariaDB 10.10.1 RC遇utf8mb4_0900_as_cs报错,求等效排序规则
解决方案
- 问题根源:
utf8mb4_0900_as_cs是MySQL 8.0新增的基于Unicode 9.0的区分大小写、区分重音排序规则,MariaDB 10.10.1 RC中无完全同名规则,但存在等效替代项。 - 等效排序规则:
utf8mb4_unicode_900_as_cs- 该规则基于Unicode 9.0标准,具备
as_cs(区分重音、区分大小写)特性,与MySQL的utf8mb4_0900_as_cs行为完全一致。
- 该规则基于Unicode 9.0标准,具备
- 导入修复步骤:
- 打开mysqldump导出的SQL备份文件
- 全局替换所有
utf8mb4_0900_as_cs字符串为utf8mb4_unicode_900_as_cs - 执行修改后的SQL文件完成导入
- 低版本兼容补充:若使用低于MariaDB 10.3的版本,
utf8mb4_unicode_900_as_cs不可用,可临时用utf8mb4_bin替代,但该规则基于二进制值排序,排序逻辑与Unicode标准有差异,仅作应急方案。
内容的提问来源于stack exchange,提问作者pantonis
相关产品推荐
相关产品推荐

