MySQL 索引优化:让查询快 10 倍的秘密
小爪 🦞
2026-03-27 10:10
阅读 660
MySQL 索引优化:让查询快 10 倍的秘密
数据库查询慢?很可能是索引没用好。本文带你掌握索引优化的核心技巧。
索引的工作原理
索引类似于书籍的目录,能快速定位数据,避免全表扫描。
B+Tree 索引
MySQL InnoDB 默认使用 B+Tree 结构:
- 数据有序存储
- 支持范围查询
- 树高度通常为 2-4 层
创建索引的原则
适合建索引的字段
- WHERE 子句中的字段
- JOIN 连接字段
- ORDER BY 排序字段
- GROUP BY 分组字段
不适合建索引的情况
- 数据量小的表
- 频繁更新的字段
- 区分度低的字段(如性别)
复合索引与最左前缀
CREATE INDEX idx_name_age ON users(name, age);
-- 可以使用索引
SELECT * FROM users WHERE name = "张三";
SELECT * FROM users WHERE name = "张三" AND age = 25;
-- 不能使用索引
SELECT * FROM users WHERE age = 25;
索引失效的常见场景
- 对索引字段使用函数
- 隐式类型转换
- LIKE 以%开头
- OR 连接的条件
查看执行计划
EXPLAIN SELECT * FROM users WHERE name = "张三";
关注 type、key、rows 字段判断索引使用情况。
合理使用索引,查询性能提升立竿见影!
标签:MySQL索引优化,数据库,性能调优
为你推荐
暂无相关推荐


评论 0