首页 热点资讯 义务教育 高等教育 出国留学 考研考公
您的当前位置:首页正文

检测SQL的性能与优化

2024-12-17 来源:花图问答

检测SQL的性能

>>>explain SQL;

explain SQL

>>>explain SQL \G;

explain SQL \G;

SELECT_TYPE

simple:不含子查询

subquery:非from子查询

derived:from型子查询

primary:含子查询或派生查询

Table

显示查询的表名或者是表的别名

Possible_key

可能用到的索引

KEY

最终用到的索引

key_len

用到的索引长度

TYPE

是索引查询的方式

all:表示扫描到了所有的数据,也就是说没有用到任何索引。

index:表示扫描到了所有到所有节点,也就是说。

range:表示查询时,能根据索引做范围的扫描。

ref:表示通过索引可以直接引用到某些数据行。

从上往下,SQL性能递增。

ROWS

估计要扫描多少行数据

EXTRA

index:用到了索引覆盖,效率非常高

use where:指光靠索引定位不了,还需要wehre判断一下。

use temporary:指用上了临时表,group by 与 order by不同列时,或者group by、order by其它表的列时。

use filesort:文件排序(文件可能在磁盘,也可能在内存)。

查询磁盘的临时状态

>>>show status like '%tmp%';

显示全文