MySQL字符集与排序规则:新手必知的基础配置

本文介绍MySQL字符集与排序规则。字符集是存储字符的编码规则(如utf8mb4支持完整Unicode),排序规则决定字符比较排序方式(如utf8mb4_general_ci不区分大小写)。配置不当会导致乱码、排序错误(如“张三”排序异常)或兼容性问题(旧utf8不支持emoji)。 配置层级优先级:列级>表级>数据库级>服务器级,默认按服务器级配置。查看配置用SHOW VARIABLES(字符集/排序规则)、SHOW CREATE DATABASE/ TABLE等命令。 配置推荐:优先utf8mb4字符集,服务器级改my.cnf/ini文件,数据库/表/列用CREATE/ALTER语句指定。常见问题:乱码需统一字符集,emoji无法显示改utf8mb4,排序错误可选更精确的排序规则。 最佳实践:用utf8mb4字符集,排序规则选utf8mb4_general_ci(性能好)或unicode_ci(精确),避免列级单独配置,定期检查配置确保一致性。

阅读全文