Java 后端面试题库 / 全部题解免费阅读理解原理,有条理地回答

InnoDB 为什么常选自增 ID?

查看完整题解

参考回答

直接回答

自增整数通常短,按主键聚簇写入时较有局部性,二级索引携带的主键也较小。这是常见设计取舍,表仍可使用合适的业务键或其他代理键。

讲清原理

随机插入可能访问更多索引页,而顺序插入在极高并发下也可能形成热点。自增分配和提交顺序并不等价,回滚后可能留下空洞。

InnoDB二级索引携带主键,缺少所需列时再定位完整行
InnoDB二级索引携带主键,缺少所需列时再定位完整行

例子与易错点

选键时一并评估二级索引数量、写入并发和跨实例唯一性。不要用 ID 缺口判断订单丢了,也不要用它当必须连续的账务号。

相关题 · 第 48 题、第 82 题

这道题,你掌握得怎么样?

掌握程度由你主动标记,阅读和收藏不会自动改变状态。