通过Query Profiler查看MySQL语句运行时间

前言

Query Profiler是MYSQL自带的一种query诊断分析工具,通过它可以分析出一条SQL语句的性能瓶颈在什么地方。通常我们是使用的explain,以及slow query log都无法做到精确分析,

但是Query Profiler却可以定位出一条SQL语句执行的各种资源消耗情况,比如CPU,IO等,以及该SQL执行所耗费的时间等。

Show profiles是5.0.37之后添加的,要想使用此功能,要确保版本在5.0.37之后。


登录MySQL查看数据库版本方法

登录:mysql -u username -p
使用想选择的数据库:use databses
查看版本:show variables like "%version%"; 或者 select version();

在这里插入图片描述

查看profile是否开启,数据库默认是不开启的

查看方法: show variables like "%pro%";
设置开启方法: set profiling = 1;

在这里插入图片描述

可以开始执行一些想要分析的sql语句了

执行完后 ,查询SQL的执行时间:

show profiles;

即可查看所有sql的总的执行时间。
Query_ID:SQL编号ID;
Duration:SQL执行时间;
Query:SQL语句。
在这里插入图片描述

show profile for query 1 即可查看第1个sql语句的执行的各个操作的耗时详情。
在这里插入图片描述

查看出一条SQL语句执行的各种资源消耗情况,比如CPU,IO等:
show profile cpu, block io, memory,swaps,context switches,source for query 1
在这里插入图片描述

关于show profile all 返回行和列的详解请见下篇文章:MySQL中show profile详解

测试完毕后,关闭参数:set profiling=0

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值