mysql 为什么有两套 UTF-8 编码实现呢
mysql 为什么有两套 UTF-8 编码实现呢
程序员朱永胜有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步, 认准
https://blog.zysicyj.top
全网最细面试题手册,支持艾宾浩斯记忆法。这是一份最全面、最详细、最高质量的 java 面试题,不建议你死记硬背,只要每天复习一遍,有个大概印象就行了。https://store.amazingmemo.com/chapterDetail/1685324709017001`
MySQL 中存在两种 UTF-8 编码实现的原因是为了兼容性和历史原因。
- utf8mb3:这是 MySQL 早期使用的 UTF-8 实现,使用最多 3 个字节来存储 Unicode 字符。这种实现存在一些局限性,例如无法支持一些辅助平面字符(Supplementary Characters),这导致了对一些特殊字符的存储和处理问题。
- utf8mb4:随着 Unicode 标准的发展,MySQL 引入了 utf8mb4 编码实现,使用最多 4 个字节来存储 Unicode 字符。utf8mb4 解决了 utf8mb3 存在的一些局限性,可以支持更广泛的 Unicode 字符范围,包括辅助平面字符。
因此,MySQL 存在两套 UTF-8 编码实现是为了适应不同的需求和兼容性考虑。在新的 MySQL 版本中,utf8mb4 已经成为了推荐的 UTF-8 编码实现,特别是在需要支持更广泛的 Unicode 字符范围时。