- 0
- 0
- 约4.63千字
- 约 7页
- 2026-09-20 发布于河北
- 举报
MySQL索引优化高频面试题及详细答案(实战向)
一、索引基础核心面试题
1、什么是索引?索引的本质作用是什么?
答案:
索引是数据库中用于快速检索数据的磁盘数据结构,相当于数据表的“目录”。
核心作用两点:
1、大幅降低查询IO次数:没有索引时查询数据需要全表扫描,逐行比对数据;建立索引后,可通过索引结构快速定位数据磁盘位置,减少磁盘读写。
2、加速查询、排序、分组:索引有序特性,可直接避免查询后的filesort排序、groupby临时表计算,提升执行效率。
补充:索引只会提升读性能,会轻微降低写(增删改)性能,因为数据变更时需要同步维护索引结构。
2、MySQL常用索引类型有哪些?各自适用场景?
答案:
日常开发最常用4种索引,InnoDB引擎为主:
1、主键索引(聚簇索引)
每张表唯一、非空、不重复,InnoDB主键索引的叶子节点存储整行数据。查询效率最高,优先使用自增ID、雪花ID作为主键。
2、普通索引(二级索引)
最基础的索引,允许重复、可为空,叶子节点存储索引列值+主键值。适用于普通条件查询、筛选字段。
3、唯一索引
索引列值唯一、不可重复,允许为空。适用于手机号、身份证、用户账号等唯一业务字段,既加速查询又做唯一性约束。
4、联合索引(复合索引)
多个字段组合建立的索引,遵循最左匹配原则。是日常优化核心,适用于多条件联合查询场景。
拓展:还有全文索引(适
原创力文档

文档评论(0)