关于MySQL中explain工具的使用


Posted in MySQL onMay 08, 2023

EXPLAIN 是 MySQL 提供的一种工具,用于分析查询语句的执行计划,即查询优化器是如何决定执行查询语句的。EXPLAIN可以帮助我们分析查询语句的性能瓶颈,找出问题所在,进而优化查询语句和数据库结构。

使用EXPLAIN非常简单,只需要在查询语句前面加上EXPLAIN关键字即可,如下所示:

explain select * from articles where url='csdn.com'

输出结果如下:(图片太长,这里切分成 2 张,实际上是一张)

关于MySQL中explain工具的使用

关于MySQL中explain工具的使用

输出结果详解:

  1. id:既是查询的标识符,表示查询中每个操作的唯一标识;也是执行查询的顺序,越大优先级越高。
  2. select_type:查询类型,表示查询的类型,如简单查询、联合查询、子查询等等。
  3. table:查询涉及的表名。
  4. partitions:查询涉及的分区名。
  5. type:访问类型,表示MySQL在表中查找所需行的方式,常用的有ALL、index、range、ref、eq_ref、const等等。
  6. possible_keys:可能使用的索引,表示查询语句中可能会使用到的索引。
  7. key:实际使用的索引,可以查看本次查询是否用到了索引。
  8. key_len:索引使用的字节数。
  9. ref:列与索引的比较条件。
  10. rows:扫描的行数,表示MySQL执行查询语句时需要扫描的行数,这个值越小越好。
  11. filtered:返回结果集的行数占扫描行数的百分比,值范围在0~100之间。
  12. Extra:包含MySQL在执行查询时的一些额外信息,如使用临时表、排序方式等等。

通过分析EXPLAIN的输出结果,我们可以确定查询语句的执行计划、执行效率和可能存在的问题,从而进行优化。

到此这篇关于关于MySQL中explain工具的使用的文章就介绍到这了,更多相关MySQLexplain工具内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

MySQL 相关文章推荐
mysql多表查询-笔记七
Apr 05 MySQL
Mysql数据库命令大全
May 26 MySQL
zabbix监控mysql的实例方法
Jun 02 MySQL
MySQL中varchar和char类型的区别
Nov 17 MySQL
Linux7.6二进制安装Mysql8.0.27详细操作步骤
Nov 27 MySQL
mysql自增长id用完了该怎么办
Feb 12 MySQL
浅谈如何保证Mysql主从一致
Mar 13 MySQL
关于k8s环境部署mysql主从的问题
Mar 13 MySQL
mysql的Buffer Pool存储及原理
Apr 02 MySQL
mysql性能优化以及配置连接参数设置
May 06 MySQL
MySQL查询日期时间
May 15 MySQL
MySQL中的全表扫描和索引树扫描
May 15 MySQL
postgresql如何找到表中重复数据的行并删除
May 08 #MySQL
SQL Server数据库的三种创建方法汇总
May 08 #MySQL
SQL中去除重复数据的几种方法汇总(窗口函数对数据去重)
May 08 #MySQL
MySQL中TIMESTAMP类型返回日期时间数据中带有T的解决
Dec 24 #MySQL
MySQL实现用逗号进行拼接、以逗号进行分割
Dec 24 #MySQL
MySQL数据管理操作示例讲解
Dec 24 #MySQL
MySQL深分页问题解决思路
Dec 24 #MySQL
You might like
使用bcompiler对PHP文件进行加密的代码
2010/08/29 PHP
ThinkPHP的Widget扩展实例
2014/06/19 PHP
PHP生成等比缩略图类和自定义函数分享
2014/06/25 PHP
php线性表的入栈与出栈实例分析
2015/06/12 PHP
PHP 9 大缓存技术总结
2015/09/17 PHP
Laravel的throttle中间件失效问题解决方法
2016/10/09 PHP
PHP实现限制域名访问的实现代码(本地验证)
2020/09/13 PHP
基于jQuery图片平滑连续滚动插件
2009/04/27 Javascript
jQuery动态添加的元素绑定事件处理函数代码
2011/08/02 Javascript
jQuery中(function(){})()执行顺序的理解
2013/03/05 Javascript
使用JQUERY进行后台页面布局控制DIV实现左右式
2014/01/07 Javascript
详解JavaScript中undefined与null的区别
2014/03/29 Javascript
JavaScript中匿名函数用法实例
2015/03/23 Javascript
学习JavaScript设计模式之迭代器模式
2016/01/19 Javascript
iscroll.js的上拉下拉刷新时无法回弹的解决方法
2016/02/18 Javascript
Javascript之BOM(window对象)详解
2016/05/25 Javascript
AngularJS常见过滤器用法实例总结
2017/07/06 Javascript
关于Google发布的JavaScript代码规范你要知道哪些
2018/04/04 Javascript
微信小程序之裁剪图片成圆形的实现代码
2018/10/11 Javascript
[07:57]2018DOTA2国际邀请赛寻真——PSG.LGD凤凰浴火
2018/08/12 DOTA
Python操作MongoDB数据库PyMongo库使用方法
2015/04/27 Python
使用Python简单的实现树莓派的WEB控制
2016/02/18 Python
python音频处理用到的操作的示例代码
2017/10/27 Python
Python微信操控itchat的方法
2019/05/31 Python
Python计算机视觉里的IOU计算实例
2020/01/17 Python
CSS3的 fit-content实现水平居中
2017/09/07 HTML / CSS
js实现移动端H5页面手指滑动刻度尺功能
2017/11/16 HTML / CSS
Topman美国官网:英国著名的国际平价时尚男装品牌
2017/12/22 全球购物
通往英国高街的商店橱窗:Down Your High Street
2020/07/19 全球购物
如何为DataGridView添加一个定制的Column Type
2014/01/21 面试题
类和结构的区别
2012/08/15 面试题
Ajax请求总共有多少种Callback
2016/07/17 面试题
智能电子应届生求职信
2013/11/10 职场文书
2014年幼儿园教师工作总结
2014/11/08 职场文书
创业不要错过,这4种餐饮新模式
2019/07/18 职场文书
mysql 带多个条件的查询方式
2021/06/05 MySQL