MySQL 的字符集和排序规则?为什么推荐 utf8mb4?
字符集(charset)决定字符如何编码存储:utf8mb4、utf8mb3(旧 utf8)、latin1、gbk 等;排序规则(collation)决定比较排序方式:utf8mb4_general_ci(不区分大小写,快)、utf8mb4_unicode_ci(按 Unicode 排序)、utf8mb4_bin(二进制比较)。推荐 utf8mb4 原因:① utf8mb4 是完整 UTF-8(1-4 字节),支持全部 Unicode 字符,包括 emoji(😀)与生僻字;② utf8mb3(utf8)最多 3 字节,存不了 emoji 和部分字符;③ 排序规则一般用 utf8mb4_unicode_ci 或 0900_ai_ci(8.0 默认)。建表时库/表/列统一指定。
一起交流
分享经验,让问题更进一步
讨论,从你的观点开始
还没有回复,欢迎补充经验或分享不同的思路。