MySQL--show profile

showprofile是mysql提供用来分析当前会话中语句执行的资源消耗情况,可以用于SQL的调优的测量。默认情况下,参数处于关闭状态,并保存最近15次的运行结果。
开启功能,默认是关闭的,使用前需要开启
show variables like ‘profiling’
在这里插入图片描述
开启

set profiling=on;

在这里插入图片描述
运行SQL

select * from T_TEST;

查看结果

show profiles;

在这里插入图片描述
诊断SQL,show profile cpu,block io for query,上一步前面的问题SQL数字码

show profile cpu,block io for query 3;

在这里插入图片描述
如图中显示了一个SQL完整的生命周期。列包含cpu和硬盘io,还有其他
type
ALL–显示所有
BLOCK IO–块IO相关开销
CONTEXT SWITCHES–上下文切换相关开销
CPU–显示CPU相关开销信息
IPC–显示发送和接收相关开销信息
MEMORY–显示内存相关开销信息
PAGE FAULTS–显示页面错误相关开销信息
SOURCE–显示和Source_function,Source_file,Source_line相关的开销信息
SWAPS–显示交换次数相关开销的信息

出现问题的信息
converting HEAP to MyISAM查询结果太大,内存都不够用了往磁盘上搬。
creating temp table 创建临时表。拷贝数据到临时表,用完再删除
Coping to tmp table on disk 把内存中临时表复制到磁盘。
Lock 锁了。

猜你喜欢

转载自blog.csdn.net/BtWangZhi/article/details/86670624
今日推荐