MySQL · 单选题 · 第 38 题
Java 后端开发面试 · 第 38 题
InnoDB 表推荐使用自增整型主键,主要原因是?
- A随机的 UUID 主键比自增主键插入更快,但占用空间更大
- B自增主键可以防止 SQL 注入,保护数据库安全
- C新记录按顺序追加到聚簇索引末尾,减少页分裂和随机 IO
- D事务回滚后,自增值会被收回,保证编号连续
答案
C C. 新记录按顺序追加到聚簇索引末尾,减少页分裂和随机 IO
解析
聚簇索引按主键顺序存储,自增主键插入时总是写在最后一页,页写满了再开新页。随机主键会插到中间,频繁引起页分裂、产生碎片,而且主键越长,所有二级索引也越大。自增值在事务回滚后不会收回,所以主键出现空洞是正常现象。