使用 EXPLAIN 查看执行计划

作用:分析查询优化器选择的执行计划,包括索引使用、表连接顺序等。

语法EXPLAIN SELECT * FROM 表名 WHERE 条件;

输出关键字段:

type:访问类型(如ALL全表扫描、INDEX索引扫描、ref非唯一索引等)。

key:实际使用的索引。

rows:预估扫描的行数。

Extra:额外信息(如Using where、Using index等)。

使用 EXPLAIN ANALYZE(MySQL 8.0.18+)

作用:提供实际执行时的详细统计信息(如耗时、循环次数)

语法EXPLAIN ANALYZE SELECT * FROM 表名 WHERE 条件;

输出:逐行展示执行过程,包含实际耗时(如actual time=0.1..2.5)。

使用性能分析(Profiling)

作用:查看查询各阶段的耗时。

步骤

  1. 启用ProfilingSET SESSION profiling = 1;
  2. 执行查询:SELECT * FROM users WHERE age > 30;
  3. 查看所有Profile记录:SHOW PROFILES;
  4. 查看具体查询的详细耗时:SHOW PROFILE FOR QUERY 1; -- 1为查询ID。

输出:显示starting、checking permissions、Sending data等阶段的耗时

使用Performance Schema(高级监控)

作用:深度监控服务器运行时行为,包括SQL执行细节。

步骤

  1. 确保启用Performance Schema(默认开启):SHOW VARIABLES LIKE 'performance_schema'; -- 确认值为ON
  2. 执行查询后,查看历史记录:

    SELECT * FROM performance_schema.events_statements_history WHERE SQL_TEXT LIKE '%SELECT * FROM users%';

关键字段:DURATION(耗时)、ROWS_EXAMINED(扫描行数)

MySQL里面怎么看一条sql的执行过程的更多相关文章

  1. MySQL 中一条 sql 的执行过程

    一条 SQL 的执行过程 前言 查询 查询缓存 分析器 优化器 执行器 数据更新 日志模块 redo log (重做日志) binlog (归档日志) undo log (回滚日志) 两阶段提交 为什 ...

  2. Oracle是如何工作的?实例是如何响应用户请求?一条SQL的执行过程~

    Oracle 是如何工作的? Select id,name from t order by id ; – SQL 解析(查看语法是否错误,如果没有错误,分析语意,执行此语句的权限) – 执行计划(OR ...

  3. 一条 sql 的执行过程详解

    写操作执行过程 如果这条sql是写操作(insert.update.delete),那么大致的过程如下,其中引擎层是属于 InnoDB 存储引擎的,因为InnoDB 是默认的存储引擎,也是主流的,所以 ...

  4. 一条Sql的执行过程

    一条sql内部是如何执行的: 学习MySQL实战45专栏 sql中的内部执行图: 可以分为两部分:server和存储引擎 server层包含: 连接器.分析器.优化器.执行器,涵盖了MySQL大多数核 ...

  5. 腾讯面试:一条SQL语句执行得很慢的原因有哪些?---不看后悔系列

    说实话,这个问题可以涉及到 MySQL 的很多核心知识,可以扯出一大堆,就像要考你计算机网络的知识时,问你"输入URL回车之后,究竟发生了什么"一样,看看你能说出多少了. 之前腾讯 ...

  6. MySql 学习之 一条更新sql的执行过程

    上一篇文章咱们说了一条查询sql的执行过程.如果没有看过上一篇文章的可以去看下上一篇文章,今天咱们说说一条更新sql的执行过程. 上面一条sql是将id为1的分数加上10. 那么它的执行流程是怎样的呢 ...

  7. MySql 学习之 一条查询sql的执行过程

    相信大家都接触过Mysql数据库,而且也肯定都会写sql.我不知道大家有没有这样的感受,反正我是有过这样的想法.就是当我把一条sql语句写完了,并且执行完得到想要的结果.这时我就在想为什么我写这样的一 ...

  8. 一条SQL语句执行得很慢的原因有哪些?| MySQL高性能优化规范建议

    一条SQL语句执行得很慢的原因有哪些 https://mp.weixin.qq.com/s?__biz=Mzg2OTA0Njk0OA==&mid=2247485185&idx=1&am ...

  9. 一条SQL语句执行得很慢的原因有哪些?

    说实话,这个问题可以涉及到 MySQL 的很多核心知识,可以扯出一大堆,就像要考你计算机网络的知识时,问你“输入URL回车之后,究竟发生了什么”一样,看看你能说出多少了. 之前腾讯面试的实话,也问到这 ...

  10. mysql体系结构和sql查询执行过程简析

    一: mysql体系结构 1)Connectors 不同语言与 SQL 的交互 2)Management Serveices & Utilities 系统管理和控制工具 备份和恢复的安全性,复 ...

随机推荐

  1. 搭建邮局-1.安装hMailserver和配置邮局

    目录 搭建邮局-1.安装hMailserver和配置邮局 https://www.cnblogs.com/daen/p/16040202.html 搭建邮局-2.添加域名和域名解析 https://w ...

  2. Windows下使用syscall.SIGUSR1报错:SIGUSR1 not declared by package syscall

    windows打开hyperledger/fabric项目时,\fabric\integration\e2e\e2e_signal_test.go中的syscall.SIGUSR1会报错. 这是因为 ...

  3. 「Note」CF 套题

    最后一次添加的题目:CF1572C CF *2000-*2100 \(\color{blueviolet}{CF771C}\) 非常好题目啊. 首先考虑题目让你求的到底是个什么东西,不难看出 \(f( ...

  4. 绘画应用当中的Midjourney和Diffusion有何区别?

    本文由 ChatMoney团队出品 Midjourney与Stable Diffusion:对比分析 1. 易用性与部署 Midjourney: 在线操作:Midjourney的最大优势在于其无需下载 ...

  5. 数栈SQL优化案例:OR条件优化

    本文整理自:袋鼠云技术荟 | SQL优化案例(2):OR条件优化 数栈是云原生-站式数据中台PaaS,我们在github上有一个有趣的开源项目:https://github.com/DTStack/f ...

  6. 2025 智能制造必看!国内五大 MES 系统排名深度解析

    在 "中国制造 2025" 战略持续推进的背景下,制造企业数字化转型进入深水区.作为连接计划层与控制层的核心枢纽,MES(制造执行系统)已成为实现智能工厂的关键技术.2024 年国 ...

  7. 云筑集采研发团队的Scrum敏捷实践总结

    Edison作为团队内部敏捷教练,这是我正式辅导的第一个Scrum Master童鞋(花名:大师兄)的敏捷迭代实践总结,在互联网公司做敏捷转型,难而正确! Scrum 是用于开发.交付和持续支持复杂产 ...

  8. 【Cursor保姆级教程】零基础小白从安装到实战,手把手教你玩转AI编程神器!

    1.什么是AI编程? 在传统的编程模式中,开发程序是一项高度专业化的任务.程序员需要具备深厚的技术背景,掌握至少一门编程语言比如Python.Java.C++等等.并且要对复杂的逻辑和算法有清晰的理解 ...

  9. Atlas启动报错:Caused by: org.apache.solr.common.SolrException: Cannot connect to cluster at xxx.com:2181: cluster not found/not ready

    Atlas启动时报以下错误,看情况是atlas没有在zk上找到solr注册信息:然后发现solr启动命令bin/solr start -force会默认使用内置的zk,不会往公共zk上面注册: 解决方 ...

  10. 前端开发系列038-基础篇之new关键字

    本文介绍JavaScript 语言中 new 关键字调用构造函数的内部执行细节和模拟实现. 在 JavaScript 语言中,我们通过 new 关键字来调用构造函数以创建实例对象,或者是通过 new关 ...