MySQL 索引算法详解
在 MySQL 中,索引是一种提高查询速度的数据结构。不同的索引算法适用于不同的查询场景,本文将详细介绍 MySQL 的几种主要索引算法。
1. B+Tree 索引(默认索引)
1.1 存储结构
B+Tree(B+ 树)是一种平衡多路搜索树,其特点是:
- 所有数据存储在叶子节点,内部节点仅存储索引值。
- 叶子节点之间通过双向链表相连,便于范围查询。
- 所有叶子节点在同一层,保持查询效率稳定。
1.2 适用存储引擎
- InnoDB(默认)
- MyISAM
1.3 优势
✅ 适用于 范围查询(BETWEEN、>、< 等)
✅ 适用于 ORDER BY 排序查询
✅ 叶子节点形成链表,支持 高效的顺序遍历
1.4 局限性
❌ 不适用于全文搜索(需要使用 Full-Text 索引)
❌ 插入/删除频繁时可能导致索引分裂