一、什么是索引?
1.1 索引的定义
索引是一种特殊的数据结构,通常以 B-Tree 或者 Hash 的形式存储,用于快速查找数据库表中的记录。索引通过存储表中一列或多列的值,使得查询数据时可以直接通过索引查找,而不必扫描整个表。这显著减少了 I/O 操作,从而提高了查询效率。
1.2 索引的作用
- 加速查询:索引的主要作用是通过减少查询过程中扫描的行数,从而提高查询速度。
- 加速排序:在
ORDER BY
查询中,索引可以帮助快速排序数据。 - 加速分组:在执行
GROUP BY
查询时,索引可以提高分组操作的效率。 - 保持唯一性:通过唯一索引(
UNIQUE
),可以确保数据的唯一性,防止重复值插入。
二、MySQL 索引的类型
MySQL 提供了多种类型的索引,不同类型的索引用于不同的场景,了解它们的特点和适用范围有助于合理设计索引。