MySQL之用show profiles进行sql分析

前提:MySQL版本支持Show profiles。
1、查询其是否开启:

show VARIABLES like 'profiling';

ON-开启;OFF-关闭。
开启命令:

set global profiling = on;

在这里插入图片描述
2、使用:
① 查看所有profile:

show profiles;

在这里插入图片描述

② 查看单个的profile开销(query后为上图中的Query_ID):

# 查看cpu和io开销信息
show profile cpu, block io for query 232;

在这里插入图片描述
参数说明:

type说明
ALL显示所有的开销信息
BLOCK IO显示块IO相关开销
CONTEXT SWITCHES上下文切换相关开销
CPU显示CPU相关开销信息
IPC显示发送和接口相关开销信息
MEMORY显示内存相关开销信息
PAGE FAULTS显示页面错误相关开销信息
SOURCE显示和Source_function, Source_file, Source_line相关的开销信息
SWAPS显示交换次数相关开销的信息

3、日常开发中需要注意的结论:
① converting HEAP to MyISAM——查询结果过大,内存不够,占用磁盘
② Creating tmp table——创建临时表
③ Copying to tmp table on disk——将内存中临时表复制到磁盘上,危险!
④ locked

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值