MySQL索引优化高频面试题及详细答案(实战向).docxVIP

  • 0
  • 0
  • 约4.63千字
  • 约 7页
  • 2026-09-20 发布于河北
  • 举报

MySQL索引优化高频面试题及详细答案(实战向).docx

MySQL索引优化高频面试题及详细答案(实战向)

一、索引基础核心面试题

1、什么是索引?索引的本质作用是什么?

答案:

索引是数据库中用于快速检索数据的磁盘数据结构,相当于数据表的“目录”。

核心作用两点:

1、大幅降低查询IO次数:没有索引时查询数据需要全表扫描,逐行比对数据;建立索引后,可通过索引结构快速定位数据磁盘位置,减少磁盘读写。

2、加速查询、排序、分组:索引有序特性,可直接避免查询后的filesort排序、groupby临时表计算,提升执行效率。

补充:索引只会提升读性能,会轻微降低写(增删改)性能,因为数据变更时需要同步维护索引结构。

2、MySQL常用索引类型有哪些?各自适用场景?

答案:

日常开发最常用4种索引,InnoDB引擎为主:

1、主键索引(聚簇索引)

每张表唯一、非空、不重复,InnoDB主键索引的叶子节点存储整行数据。查询效率最高,优先使用自增ID、雪花ID作为主键。

2、普通索引(二级索引)

最基础的索引,允许重复、可为空,叶子节点存储索引列值+主键值。适用于普通条件查询、筛选字段。

3、唯一索引

索引列值唯一、不可重复,允许为空。适用于手机号、身份证、用户账号等唯一业务字段,既加速查询又做唯一性约束。

4、联合索引(复合索引)

多个字段组合建立的索引,遵循最左匹配原则。是日常优化核心,适用于多条件联合查询场景。

拓展:还有全文索引(适

文档评论(0)

1亿VIP精品文档

相关文档