前言:explain(执行计划),使用explain关键字可以模拟优化器执行sql查询语句,从而知道MySQL是如何处理sql语句。explain主要用于分析查询语句或表结构的性能瓶颈。

注:本系列随笔如无特殊说明都MySQL版本都为5.7.22。

1.explain的作用

通过explain+sql语句可以知道如下内容:

①表的读取顺序。(对应id)

②数据读取操作的操作类型。(对应select_type)

③哪些索引可以使用。(对应possible_keys)

④哪些索引被实际使用。(对应key)

⑤表直接的引用。(对应ref)

⑥每张表有多少行被优化器查询。(对应rows)

2.explain包含的信息

explain使用:explain+sql语句,通过执行explain可以获得sql语句执行的相关信息。

下面对explain的表头字段含义进行解释。

注:下图中有些explain表头不包含partitions和filtered字段,是因为有些截图是直接从视频资料中截取的,当并不影响我们的分析。

①id

select查询的序列号,包含一组数字,表示查询中执行select子句或操作表的顺序,该字段通常与table字段搭配来分析。

#1.id相同,执行顺

MySQL高级知识(四)——Explain相关推荐

  1. Mysql高级知识概括

    Mysql高级知识概括 Mysql高级简介 Mysql存储引擎 MYSQL配置文件 MYSQL日志 MVCC MYSQL锁机制 主重复制与读写分离 Mysql分区分表分库 MYSQL字符集与字符序 M ...

  2. MySQL高级知识(十五)——主从复制

    前言:本章主要讲解MySQL主从复制的操作步骤.由于环境限制,主机使用Windows环境,从机使用用Linux环境.另外MySQL的版本最好一致,笔者采用的MySQL5.7.22版本,具体安装过程请查 ...

  3. MySQL高级知识(十六)——小表驱动大表

    前言:本来小表驱动大表的知识应该在前面就讲解的,但是由于之前并没有学习数据批量插入,因此将其放在这里.在查询的优化中永远小表驱动大表. 1.为什么要小表驱动大表呢 类似循环嵌套 for(int i=5 ...

  4. MySQL高级知识(十一)——Show Profile

    前言:Show Profile是mysql提供的可以用来分析当前会话中sql语句执行的资源消耗情况的工具,可用于sql调优的测量.默认情况下处于关闭状态,并保存最近15次的运行结果. 1.分析步骤 # ...

  5. MySQL高级知识(一)——基础

    MySQL高级知识(一)--基础 前言:MySQL高级知识 1.关于MySQL的一些文件 MySQL如何安装.如何配置自启动,这里不进行讲述,可自行搜索相关安装教程进行处理.这里主要介绍MySQL的主 ...

  6. MySQL高级知识(十四)——行锁

    前言:前面学习了表锁的相关知识,本篇主要介绍行锁的相关知识.行锁偏向InnoDB存储引擎,开销大,加锁慢,会出现死锁,锁定粒度小,发生锁冲突的概率低,但并发度高. 0.准备 #1.创建相关测试表tb_ ...

  7. mysql高级知识(linux安装mysql+索引+视图+存储过程和函数+触发器)

    一.linux系统安装Mysql 1.mysql安装包: MySQL :: Download MySQL Community Server 2.mysql安装 linux安装在vmware(虚拟机)上 ...

  8. MySQL高级知识(九)——慢查询日志

    前言:慢查询日志是MySQL提供的一种日志记录,它记录MySQL中响应时间超过阈值的语句,具体指运行时间超过long_query_time值的sql语句,该sql语句会被记录到慢查询日志中.慢查询日志 ...

  9. MySQL高级知识(五)——索引分析

    前言:前面已经学习了explain(执行计划)的相关知识,这里利用explain对索引进行优化分析. 0.准备 首先创建三张表:tb_emp(职工表).tb_dept(部门表)和tb_desc(描述表 ...

最新文章

  1. 实验室信息管理系统(LIMS)知识大全
  2. 使用 Cufon 渲染网页字体
  3. NumPy 广播的可视化
  4. Redis笔记系列(特别总结篇)——常见配置redis.conf知识点总结
  5. df.isnull使用细节
  6. 蓝桥杯历届试题 国王的烦恼(并查集逆序加边+坑)
  7. 使用Spring Boot和Project Reactor处理SQS消息
  8. 由一次磁盘告警引发的“血案”——你知道 du 和 ls 区别吗?
  9. 2021高考无准考证成绩查询,2021考研没有准考证号怎么查成绩
  10. d-link路由器samba设置_d-link云路由器怎么设置 d-link云路由器设置教程【详解】
  11. SpringCloud微服务注册调用入门-路由网关
  12. 聚合中返回source_大数据搜索与可视化分析(9)elasticsearch聚合分析Metric Aggregation...
  13. 从零开始学Pytorch之线性回归
  14. Tcl/tk glob nocomplain source
  15. JavaScript:网络请求工具库AjaxTool.js
  16. C++程序设计课程主页-2014级
  17. 51单片机原理以及接口技术(二)-单片机结构和原理
  18. Linux学习笔记之秋水BBR一键部署
  19. 滴滴美团58携程,那些发生在大并购谈判桌背后的故事
  20. python自动注册邮箱_Python自动登录126邮箱的方法

热门文章

  1. sql日期大于某天_(十五)sql/Linux 小技巧
  2. 带父节点的平衡二叉树_平衡二叉树 通俗易懂
  3. java super关键字_Java入门(二)下
  4. 计算机受限制用户,由于该计算机受到限制,本次操作已被取消的解决办法
  5. Windows系统 services.msc命令详解,Windows命令行查看本地服务
  6. SQLi Labs Less-1 联合注入+报错注入
  7. 第3讲 | 浅说区块链共识机制
  8. Sublime一些问题以及解决方法
  9. 2009年IT就业“危”中寻“机”
  10. 512抗击震灾捐款背后的思考