You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行MySQL建表语句遇1253/1273编码排序规则错误求助

解决MySQL 5.7排序规则及配置文件相关问题

一、Error Code:1273(未知排序规则'utf8mb4_0900_ai_ci')

  • utf8mb4_0900_ai_ci是MySQL 8.0专属排序规则,5.7完全不支持。直接将建表语句中的该规则替换为5.7兼容的utf8mb4_general_ci或utf8mb4_unicode_ci即可。
  • 示例修正:把 COLLATE utf8mb4_0900_ai_ci 改为 COLLATE utf8mb4_general_ci

二、Error Code:1253(排序规则'utf8mb4_general_ci'对字符集'utf8'无效)

  • 错误原因是字符集与排序规则不匹配:utf8mb4系列排序规则只能搭配utf8mb4字符集,不能用于utf8字符集。
  • 两种修正方案:
    • 保留排序规则:将表/字段的字符集改为utf8mb4;
    • 保留字符集:将排序规则改为utf8_general_ci或utf8_unicode_ci。

三、找不到my.cnf配置文件

  • 不同系统的默认路径参考:
    • Linux:常见路径为/etc/my.cnf、/etc/mysql/my.cnf、/usr/local/mysql/my.cnf;若仍找不到,执行命令 mysql --help | grep "Default options" 查看配置文件加载顺序。
    • Windows:默认在C:\ProgramData\MySQL\MySQL Server 5.7\my.ini(注意ProgramData是隐藏文件夹)。
  • 若系统无配置文件,可手动在对应路径创建my.cnf(Linux)或my.ini(Windows),添加基础字符集配置:
    [mysqld]
    character-set-server=utf8mb4
    collation-server=utf8mb4_general_ci
    [client]
    default-character-set=utf8mb4
    

四、查看已安装的排序规则

  • 在MySQL客户端执行以下命令:
    -- 查看所有可用排序规则
    SHOW COLLATION;
    -- 仅查看utf8mb4字符集对应的排序规则
    SHOW COLLATION WHERE Charset = 'utf8mb4';
    

内容的提问来源于stack exchange,提问作者bobsmith76

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 04:45:44