ALL、index、range、 ref、eq_ref、const、system、NULL(从左到右,性能从差到好)
ALL 代表这条 SQL 语句全表扫描了,需要优化。一般来说需要达到range 级别及以上。
possible_keys:可选择的索引
key:实际使用的索引
rows:扫描的行数
索引优化
例如索引减少数据库扫描的行数,
例如覆盖索引,联合索引,前缀索引等。
优化数据访问
减少请求的数据量,只查询必要的列,例如
将 * 替换为要查询的列;
只返回必要的行,使用limit限制返回行数;
缓存重复查询的数据,例如使用redis缓存用户登录数据。
重构查询方式
数据量大的表,做分页,分批查询。