mysql调优explain_MySql性能调优利器之Explain
Mysql Explain 详解
一.语法
explain < table_name >
例如: explain select * from t3 where id=3952602;
二.explain输出解释
+—-+————-+——-+——-+——————-+———+———+——-+——+——-+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+—-+————-+——-+——-+——————-+———+———+——-+——+——-+
1.id
我的理解是SQL执行的顺利的标识,SQL从大到小的执行.
例如:
mysql> explain select * from (select * from ( select * from t3 where id=3952602) a) b;
+—-+————-+————+——–+——————-+———+———+——+——+——-+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+—-+————-+————+——–+——————-+———+———+——+——+——-+
| 1 | PRIMARY | | system | NULL | NULL | NULL | NULL | 1 | |
| 2 | DERIVED | | system | NULL | NULL | NULL | NULL | 1 | |
| 3 | DERIVED | t3 | const | PRIMARY,idx_t3_id | PRIMARY | 4 | | 1 | |
+—-+————-+————+——–+——————-+———+———+——+——+——-+
很显然这条SQL是从里向外的执行,就是从id=3 向上执行.
select_type
就是select类型,可以有以下几种
(1) SIMPLE
简单SELECT(不使用UNION或子查询等) 例如:
mysql> explain select * from t3 where id=3952602;
+—-+————-+——-+——-+——————-+———+———+——-+——+——-+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+—-+————-+——-+——-+——————-+———+———+——-+——+——-+
| 1 | SIMPLE | t3 | const | PRIMARY,idx_t3_id | PRIMARY | 4 | const | 1 | |
+—-+————-+——-+——-+——————-+———+———+——-+——+——-+
(2). PRIMARY
我的理解是最外层的select.例如:
mysql> explain select * from (select * from t3 where id=3952602) a ;
+—-+————-+————+——–+——————-+———+———+——+——+——-+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+—-+————-+————+——–+——————-+———+———+——+——+——-+
| 1 | PRIMARY | | system | NULL | NULL | NULL | NULL | 1 | |
| 2 | DERIVED | t3 | const | PRIMARY,idx_t3_id | PRIMARY | 4 | | 1 | |
+—-+————-+————+——–+——————-+———+———+——+——+——-+
(3).UNION
UNION中的第二个或后面的SELECT语句.例如 mysql> explain select * from t3 where id=3952602 union all select * from t3 ; +—-+————–+————+——-+——————-+———+———+——-+——+——-+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +—-+————–+————+——-+——————-+———+———+——-+——+——-+ | 1 | PRIMARY | t3 | const | PRIMARY,idx_t3_id | PRIMARY | 4 | const | 1 | | | 2 | UNION | t3 | ALL | NULL | NULL | NULL | NULL | 1000 | | |NULL | UNION RESULT |
mysql调优explain_MySql性能调优利器之Explain相关推荐
- mysql解释器优化_MySQL——SQL性能分析优化利器之Explain
系统性能的优劣取决于我们sql的查询速度,MySQL Explain命令是分析SQL性能及优化不可缺少的一部分. Explain被我们称为解释器,通过 explain 我们可以知道以下信息:表的读取顺 ...
- 文件上传服务器jvm调优,JVM性能调优解决方案(12页)-原创力文档
精品文档 JVM性能调优解决方案(总结) 一.引言 本文的读者是技术支持人员.阅读本文后,你将理解 jboss 的启动脚本文件 (run.sh )中有一系列的 JVM配置参数的含义,以及如何调整它们, ...
- mysql配置优化ya_mysql性能调优工具之mytop
Mysql性能调优工具之mytop的安装和使用 1.mytop的下载地址 2.首先安装mytop必要的组件. yum -y install perl-DBD-MySQL perl-DBIperl-Te ...
- MySQL索引原理与性能调优
MySQL 应该是最流行的后端数据库,尽管 NOSQL 近几年越来越火爆,可是相信大部分架构师还是会选择 MySQL 来做数据存储. 作为一名Java程序员相信MySQL我们都不陌生,但真的了解MyS ...
- hadoop distcp 参数调优_linux性能调优总结 - 星火撩原
系统性能一直是个热门话题.做运维这几年也一直在搞性能调优,写这个文章也算是对工作的总结. 讲调优第一步是,要讲为什么要调优?也就是系统分析,分析还需要有指标,做好性能监控的情况下,看到确实需要调优才能 ...
- hbase 读写调优_hbase性能调优
一.服务端调优 1.参数配置 1).hbase.regionserver.handler.count:该设置决定了处理RPC的线程数量,默认值是10,通常可以调大,比如:150,当请求内容很大(上MB ...
- java g1 收集调优_Java性能调优:充分利用垃圾收集器
java g1 收集调优 JVM背后发生了什么,垃圾回收如何影响Java性能? 性能调优世界是一个危险的地方,一个JVM标志失衡,事情很快就会变得繁琐. 因此 ,我们决定求助于Java性能调优专家, ...
- java 性能调优_Java性能调优调查结果(第四部分)
java 性能调优 这是本系列中的最后一篇文章,我们将分析我们在2014年10月进行的Java Performance Tuning Survey的结果.如果您尚未阅读第一篇文章,建议您首先阅读以下内 ...
- java 性能调优_Java性能调优调查结果(第三部分)
java 性能调优 这是本系列文章的第三篇,我们将分析2014年10月进行的调查的结果.如果您尚未这样做,我建议从本系列的前两篇文章开始: 问题严重性分析和监视域分析 . 这篇文章着重于故障排除/根本 ...
最新文章
- 为什么栈和堆的生长方向不一样
- android 应用变量,Android全局应用变量的使用
- C#获得父进程PID编号的完整源源码
- 随机验证码 php
- Valgrind 安装与使用
- jit编译_意外分配– JIT编译抖动
- python怎么导入apscheduler,如何强制apscheduler将作业添加到作业存储?
- 贯穿时域与频域的方法——傅立叶分析
- Jquery插件 bootstrap-datepicker 日期拾取器
- [SCOI2005]骑士精神
- 从命令行安装IIS 7.0
- FPGA开平方的实现(三种方法)
- 企业内部网路怎么防止网络出现环路?
- linux如何卸载光驱显示busy,执行umount 的时候却提示:device is busy 的处理方法 卸载挂载的盘提示如下...
- python编码器用什么_用于ceasar-ciph的python构建编码器
- Windows 10 喇叭红叉 重装驱动无效 点击喇叭显示无插座信息
- JVM分化回收机制(年轻代、年老代、永久代)
- JAVA课程设计——彩票抽奖购买系统
- 达梦数据库(DM)——表空间管理命令大全
- 关于pywin32引起python应用退出时c0000005错误的分析和解决
热门文章
- linux中物理cpu、逻辑cpu以及core、vcore
- 直播丨Oracle 12.2系列安装
- 商业银行如何进行分布式数据库选型思考
- 详述一则DB2 Error Code 1639和SQL State 08001案例诊断和解决方案
- RMAN CATALOG命令手动注册磁带库中的备份片
- 详解CNN实现中文文本分类过程
- 云图说 | 华为云医疗智能体,智联大健康,AI药物研发
- 【华为云技术分享】【Python算法】分类与预测——支持向量机
- 【华为云技术分享】Entity Framework Core 捕获数据库变动
- 【华为云技术分享】opensuse使用zypper安装软件