EXPLAIN工具,EXPLAIN工具可以查看mysql在执行SQL时的状态,状图如下:
ID:sql执行ID,越大执行优先级越高,相等则从行往下执行;
select——type:和查询的类型有关,一般无优化:
table:查询表格;
type:查询的类型;主要优化对象;
possible_keys:可能使用的索引对象;
key:使用的索引;
key_len:使用索引的长度;
ref:有时是常量,有时是列值;
rows:大概扫描的行;
extra:扩展类型,代表使用索引的好坏;
优化只要查看 type,key,key_len,extra; type的类型最差要求是range,一次是ref,eq_ref,coten,system,查询类型的一般是range或者ref。
type类型 解释
system const的特例,仅返回一条数据的时候。
const 查找主键索引,返回的数据至多一条(0或者1条)。 属于精确查找
eq_ref 查找唯一性索引,返回的数据至多一条。属于精确查找
ref 查找非唯一性索引,返回匹配某一条件的多条数据。属于精确查找、数据返回可能是多条
range 查找某个索引的部分索引,一般在where子句中使用 < 、>、in、between等关键词。只检索给定范围的行,属于范围查找
index 查找所有的索引树,比ALL要快的多,因为索引文件要比数据文件小的多。
ALL 不使用任何索引,进行全表扫描,性能最差。
key是使用的索引,如果该值为空,优化的提供性更多,key_len主要是使用索引的长度,和联合索引的关系最大,Extra代表其他的信息,比如排序或者查询条件的好坏,有关扩展的讲解,下篇博客介绍
sql优化工具
最新推荐文章于 2024-07-24 14:28:41 发布