EXPLAIN 验证走没走索引

加了索引不代表查询真用了它。EXPLAIN 能让你看到执行计划:到底扫了多少行、用没用上索引、有没有额外排序,是调慢查询的必备工具。

EXPLAIN 验证走没走索引要点

EXPLAIN 验证走没走索引示例

						-- 看这条查询有没有走索引
						EXPLAIN
						SELECT * FROM user WHERE user_name = '张三';

						-- 关注输出里的几列:
						-- type : 访问类型(ALL 最差,const 最优)
						-- key  : 实际使用的索引(NULL 即未命中)
						-- rows : 预估扫描行数
						-- Extra: Using index 表示覆盖索引
避坑提醒:调慢查询固定流程:EXPLAIN 看 type 和 key,type 是 ALL 且 key 为 NULL,就说明索引没生效要重设计。
EXPLAIN 验证走没走索引 · MySQL 索引 知识卡片
卡片 07 / 09 · MySQL 索引(1080×1440 速查卡片)

MySQL 索引知识点