解析MYsql explain执行计划extra列输出
EXPLAIN Extra 列信息:
explain Extra列输出包含了关于mysql如何解决query的额外信息,特别是出现Using filesort 和 using temporary时,应当格外注意:
1:Child of 'table' pushed join@1
在做join时下推到NDB存储引擎中,引用子表‘table’,当下推join支持时,应用与Mysql cluster;
2: const row not found
通过一个query sql 例如 select... from tbl_name ,表为空是出现;
3:deleting all row
对于delete操作,一些存储引擎(MyISAM)支持一种简单并且快速的删除所有行的处理方法,如果该engine用这种优化,会显示;
4:Distinct
mysql查找distinct值,找到一个匹配之后就会立刻停止。
5:FirstMatch(tbl_name)
对tbl_name进行了semi-join firstmatch优化。
6:Full Scan on null key
子查询优化,当优化器不能使用索引查找访问的时候,采用回退策略。
7:Impossible Having
Having 语句总是 false,不能返回任何行。
8:Impossible Where
见上。
9:Impoosible where noticed after reading const tables
读完所有const(system) tables时,发现where语句总是返回false.
10: LooseScan(m..n)
Semi-join 松散策略被使用,m 和 n 是key 的一部分;
11: Materialize,scan
在mysql 5.6.7之前,这个只能用来表示物化临时表。如果有scan表示在表读取的时候没有索引临时表的索引。
在mysql 5.6.7之后,物化由select_type使用materialized说明,并且table的值为<subqueryN>。
12: No matching min/max row
没有满足查询例如SELECT MIN(...) FROM ... WHERE condition的行结果。
13: No matching row in const table
一个查询使用了join,有空表,或者在unique index 条件下没有匹配上的行。
14: No matching rows after partition pruning
发生分区清理之后发现没有东西能够被delete或者update,和impossible where意思一样。
15: start temporary,end temporary
表示临时表被用来semi-join去重复策略
16: unique row not found
没有满足在primary key和unique上的行。
17: using filesort
MySQL必须做一些事,让数据以排序的顺序被读取。
18: using index
只从index上读取数据,不从表上读取数据。如果extra还有using where,意味着用使用索引来做索引查找。如果没有using where优化器会读索引但是不表示是索引查找。
19: using index condition
表通过上访问索引和过滤索引的方式来确定是否要读取所有的表数据。这种方式下,index condition pushdown优化。
20: using index for group-by
和using index 类似,这个表名mysql发现有索引可以用来group by或者distinct
21:using join buffer(block nested loop),using join buffer(batched key access)
block nested loop表名block nested-loop算法,batched key access表示使用batched key access算法
解析MYsql explain执行计划extra列输出的更多相关文章
- MySQL性能分析, mysql explain执行计划详解
MySQL性能分析 MySQL性能分析及explain用法的知识是本文我们主要要介绍的内容,接下来就让我们通过一些实际的例子来介绍这一过程,希望能够对您有所帮助. 1.使用explain语句去查看分析 ...
- Mysql explain执行计划
EXPLAIN(小写explain)显示了mysql如何使用索引来处理select语句以及连接表.可以帮助选择更好的索引和写出更优化的查询语句. EXPLAIN + sql语句可以查看mysql的执行 ...
- MySql——Explain执行计划详解
使用explain关键字可以模拟优化器执行SQL查询语句,从而知道MySQL是如何处理你的SQL语句的,分析你的查询语句或是表结构的性能瓶颈. explain执行计划包含的信息 其中最重要的字段为:i ...
- [MySQL] explain执行计划解读
Explain语法 EXPLAIN SELECT …… 变体: 1. EXPLAIN EXTENDED SELECT …… 将执行计划“反编译”成SELECT语句,运行SHOW WARNINGS 可得 ...
- 网站优化—mysql explain执行计划
explain执行计划 简介MySQL调优: 先发现问题(慢查询,profile) 对于使用索引和没有使用索引,了解到索引可以快速去查找数据 了解什么是索引(索引是排好序的快速查找的数据结构) 索引的 ...
- MYSQL EXPLAIN执行计划命令详解(支持更新中)
本文来自我的github pages博客http://galengao.github.io/ 即www.gaohuirong.cn 摘要: 本篇是根据官网中的每个一点来翻译.举例.验证的:英语不好,所 ...
- 【夯实Mysql基础】mysql explain执行计划详解
原文地址 1).id列数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询. 2).select_type列常见的有: A ...
- mysql explain执行计划详解
1).id列数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询. 2).select_type列常见的有: A:simp ...
- 【转】mysql explain执行计划详解
1).id列数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询. 2).select_type列常见的有: A:simp ...
随机推荐
- 利用layer实现MVC页面数据互交提示弹框
需求说明: 一个表单页面,点击提交之后,进入后台进行一系列数据交互,然后将交互信息返回至页面中,并以弹框形式展示 应用场景: 添加.修改.删除数据后,返回数据操作是否成功,以及一些其他信息 前期准备: ...
- Fiddler工具的界面说明
1.Fiddler界面说明 2.session的模块说明 包含部分如下: 注:标蓝色区域的内容为平时较常用的部分 3.session不同图标和不同颜色的含义 默认颜色的含义如下: 部分图标的含义如下: ...
- [js高手之路] 我的开源javascript框架gdom - 选择器用法
gdom框架是我开发的一款dom和字符串处理框架,目前版本是1.0.0. 使用方法跟jquery是差不多的, 会用jquery就会用gdom,目前 1.0.0版本的选择器完全支持CSS3选择器.没有做 ...
- 正确显示textarea中输入的回车和空格
在textarea中输入的文本.如果含有回车或空格.在界面上显示的时候则不那么正常.回车消失了,空格变短了. 如何解决这个问题呢.有2种方法. 1.使用<pre>标签 w3c对pre元素是 ...
- 浅淡python中的with,上下文管理器
例子一 首先来看一段代码: class Foo(object): def __init__(self): print('实例化一个对象') def __enter__(self): print('进入 ...
- Java框架之Spring(五)
本文主要介绍Spring中, 1 Spring JDBC 2 使用注解方式管理事务的传播行为 3 采用XML 方式配置事务 4 SH 整合 5 SSH 整合 一.Spring JDBC 1) 导包 , ...
- Java学习笔记5(类的入门以及ArrayList)
1.类的概念:将现实生活中的事物抽象成了代码(类),我们可以使用自定义的数组类型(类)来描述现实生活中的事物. 2.分析:用一部手机来分析,手机可以打电话,上网,听音乐,这些就是方法,手机有型号,颜色 ...
- flask-form用户登录与注册
用户登录 #!/usr/bin/env python # -*- coding:utf- -*- from flask import Flask, render_template, request, ...
- 【后缀自动机】洛谷P3804模板题
题目描述 给定一个只包含小写字母的字符串SSS, 请你求出 SSS 的所有出现次数不为 111 的子串的出现次数乘上该子串长度的最大值. 输入输出格式 输入格式: 一行一个仅包含小写字母的字符串SSS ...
- VSCode好用的Python插件及配置
MS Python插件. 这是微软官方的Python插件,已经自带很多功能.下面是插件功能描述,其中部分内容我做了翻译. a) Linting (Prospector, Pylint, ...