MySQL查询分析工具-Explain

MySQL常见瓶颈

1、CPU在饱和的时候一般发生在数据装入内存或者从磁盘上读取数据的时候

2、磁盘I/O瓶颈发生在装入数据远大于内存容量的时候

服务器硬件的性能瓶颈:top、free、iostat和vmstat来查看系统的性能状态

Explain

查看执行计划,使用explain关键字可以模拟优化器执行SQL查询语句,从而知道MySQL是如何处理你的SQL语句的,分析你的查询语句或者是表结构的性能瓶颈。

查看的执行计划可以显示如下信息:

语法格式:explain+SQL语句

执行计划中包含的信息:

id: select查询的序列号,包含一组数字,表示查询中执行select子句或者操作表的顺序

              三种情况:id相同,执行顺序由上至下

                                id不同,如果是子查询,id的序号会递增,id值越大优先级越高,越先被执行

                                id相同不同,同时存在,id越大,越先被执行

select_type: 常见的值主要有六个,SIMPLE、PRIMARY、SUBQUERY、DERIVED、UNION、UNION RESULT,主要显示查询类型,主要是用于区别普通查询、联合查询、子查询等的复杂查询。

              1、SIMPLE:简单的select查询,查询中不包含子查询或者UNION

              2、PRIMARY:查询中若包含任何复杂的子查询部分,则最外层查询标记为PRIMARY

              3、SUBQUERY:在select或者where列表中包含了子查询

              4、DERIVED:在from列表中包含的子查询被标记为DERIVED(衍生),MySQL会递归执行这些子查询,把结果放在临时表中。

              5、UNION:若第二个select出现在union之后,则被标记为union;若union包含在from子句的子查询中,外层select将被标记为:DERIVED。

              6、UNION RESULT:从UNION表获取结果的SELECT。

table: 显示这一行的数据是关于哪一张表的。

type: 访问类型,主要有以下的值:

显示查询使用了何种类型,从最好到最差依

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值