RSS
菜单

MySQL 主键怎么设计?自增、UUID、雪花怎么选?

自增 BIGINT:插入有序(B+ 树顺序写、页不分裂)、空间小、简单——单库首选;缺点:分布式多写会冲突、可被遍历(安全敏感注意)、迁移合并麻烦。UUID:全局唯一、无中心——但 36 字符(可用 BINARY(16)/UUID_TO_BIN 优化)、无序导致随机 IO 与页分裂、索引性能差。雪花(Snowflake):趋势递增、全局唯一、高性能——分布式场景推荐(分库分表、多机房)。实践:单库用自增 BIGINT;分库分表/分布式用雪花或号段;不要用业务字段(手机号/身份证)做主键(可变、泄露、性能差)。

下载推广海报

圈内讨论推广海报

《MySQL 主键怎么设计?自增、UUID、雪花怎么选?》完整推广海报
一起交流

全部回复 0

分享经验,让问题更进一步

讨论,从你的观点开始

还没有回复,欢迎补充经验或分享不同的思路。