mysql profiles清空_mysql使用profiles

如何查看一条sql执行了多长时间以及每个步骤花费的时间呢?

1.登录进mysql的服务

mysql -uroot -p

2.选择数据库

show databases;

7aa38b851cb5

use lock;

3.设置profiles,mysql默认只显示sql执行时间小数点后两位,该设置可以提高时间精度

set profiling = 1;

4.执行sql

select * from abc;

5.查看sql执行时间

show profiles;

7aa38b851cb5

6.查看sql每个过程所消耗的时间

show profile;

7aa38b851cb5

如果是查看时间无法满足需求,还有其他很多参数,参考mysql官网

语法:show profile 参数 for query n

n是在执行show profiles;显示的sql的Query_ID属性

all : 显示所有

block io : 显示io次数

cpu : 显示用户cpu时间,系统cpu时间

context switches : 显示上下文切换次数

例: show profile cpu for query 1

7aa38b851cb5

7.查看当前数据库的连接数

show processList;

7aa38b851cb5

Id:表示sessionId

User:表示操作的账号

Host:表示操作的主机

db:表示操作的数据库

Command:表示命令类型

Time:表示响应命令执行时间

State:表示命令执行状态

Info: 表示详细的sql语句

8.这里有个小技巧,在使用命令行执行sql语句的时候,同一行数据由于需要显示的列很多以至于换行,看起来不是很方便,这里可以使用“\G”

select * from abc \G;

7aa38b851cb5

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值