mysql的CHARSET

发布时间 2023-03-22 21:11:10作者: 江曹

社区版:mysql5.7: Latin1/latin1_swedish_ci  mysql8.0: utf8mb4/utf8mb4_0900_ai_ci 
RDS默认的是utf8 

 

MySQL 8.0 默认的是 utf8mb4_0900_ai_ci,属于 utf8mb4_unicode_ci 中的一种,具体含义如下:

1) uft8mb4 表示用 UTF-8 编码方案,每个字符最多占4个字节。

2) 0900 指的是 Unicode 校对算法版本。(Unicode归类算法是用于比较符合Unicode标准要求的两个Unicode字符串的方法)

3) ai指的是口音不敏感。也就是说,排序时e,è,é,ê和ë之间没有区别。

4) ci表示不区分大小写。也就是说,排序时p和P之间没有区别。

注:如果需要重音灵敏度和区分大小写,则可以使用 utf8mb4_0900_as_cs


utf8mb4_unicode_ci: 是基于标准的Unicode来排序和比较,能够在各种语言之间精确排序
utf8mb4_general_ci: 没有实现Unicode排序规则,在遇到某些特殊语言或字符是,排序结果可能不是所期望的。