Mysql查看sql的执行时间

本文介绍如何使用MySQL的Profiling功能来诊断SQL语句的执行情况。主要包括:如何启用Profiling功能,执行SQL语句后的查询方式,以及如何通过特定ID获取详细信息。

在mysql中我们可以通过以下的方法去了解sql执行的具体步骤以及之间,这可以为

 

1. 查看profiling的状态,1为开启,默认处于关闭状态

SELECT @@profiling;

 

2. 开启
SET profiling = 1;


3. 执行sql语句

 

4. 显示 profiles的信息,格式看着不爽的可以在后面加上\G

show profiles;
show profiles\G;

 

5. 具体查看某一次的就可以通过指定query_id的方式

show profile for query 2;

show profile block io,cpu for query 2;

可以通过以下两种方式查看MySQLSQL执行效率: 1. 使用`EXPLAIN`语句查看SQL查询计划 `EXPLAIN`是MySQL的一个关键字,可以用来查看查询语句的执行计划,从而了解MySQL是如何处理查询语句的。具体操作步骤如下: 1) 执行`EXPLAIN SELECT * FROM table_name WHERE condition;`查询语句,其中`table_name`为表名,`condition`为查询条件。 2) 查看查询结果,MySQL会返回一张表格,包含了查询语句的执行计划。 查询结果中的每一行对应着MySQL执行计划中的一个步骤,每一列则是该步骤的具体信息,比如: - `id`:标识该步骤在执行计划中的唯一ID。 - `select_type`:表示该步骤的查询类型,比如SIMPLE、PRIMARY等。 - `table`:表示该步骤所涉及的表名。 - `type`:表示该步骤的访问类型,比如ALL、INDEX等。 - `possible_keys`:表示该步骤可能使用的索引。 - `key`:表示该步骤实际使用的索引。 - `key_len`:表示该步骤使用的索引长度。 - `ref`:表示该步骤使用的索引所依赖的列。 - `rows`:表示该步骤扫描的行数。 - `Extra`:表示该步骤的附加信息。 通过查看这些信息,可以了解SQL查询语句在MySQL中的执行计划,进而优化SQL查询语句的性能。 2. 使用`SHOW PROFILE`语句查看SQL执行时间 `SHOW PROFILE`是MySQL的一个关键字,可以用来查看SQL查询语句在MySQL中的执行时间,包括SQL执行过程中各个阶段的耗时。具体操作步骤如下: 1) 执行`SET profiling=1;`命令,开启MySQL的查询分析功能。 2) 执行需要分析的SQL查询语句。 3) 执行`SHOW PROFILES;`命令,查看SQL查询语句的执行情况。 查询结果中的每一行对应着SQL查询语句的一个阶段,每一列则是该阶段的具体信息,比如: - `Query_ID`:标识该阶段在查询过程中的唯一ID。 - `Duration`:表示该阶段的执行时间(单位为秒)。 - `Query`:表示该阶段所对应的SQL查询语句。 - `Status`:表示该阶段的状态,比如starting、executing、sending data等。 通过查看这些信息,可以了解SQL查询语句在MySQL中的执行时间,进而优化SQL查询语句的性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhao_rock_2016

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值