MySQL高级:show profile

show profile作用:

能够查出最近15条SQL语句的运行状态(包含运行过程中执行了哪些操作,各占用了多长时间),以便开发者的分析。

1、查看MySQL的版本是否支持show profie
2、查看是否已经开启show profile
SHOW VARIABLES LIKE 'profiling';

MySQL高级:show profile_第1张图片
Paste_Image.png

3、开启功能,默认是关闭
SET profiling=ON;
SHOW VARIABLES LIKE 'profiling';

Paste_Image.png

4、运行sql
随便运行几条SQL,以便于show prifiles的日志分析。
5、查看结果
show profiles;

MySQL高级:show profile_第2张图片
Paste_Image.png

6、诊断SQL
用于单独分析某条sql,查看某条sql的生命周期以及各占用多少时间。
SHOW PROFILE cpu, block io FOR QUERY id;
id为show profiles查出来的某条记录的id

MySQL高级:show profile_第3张图片
Paste_Image.png

参数说明:不只是可以查看cpu和block io

MySQL高级:show profile_第4张图片
Paste_Image.png

7、日常开发需要注意的结论
如果show profile ... for query id;出现了如下四个,则必须优化这条sql。

MySQL高级:show profile_第5张图片
Paste_Image.png

若有兴趣,欢迎来加入群,【Java初学者学习交流群】:458430385,此群有Java开发人员、UI设计人员和前端工程师。有问必答,共同探讨学习,一起进步!
欢迎关注我的微信公众号【Java码农社区】,会定时推送各种干货:


MySQL高级:show profile_第6张图片
qrcode_for_gh_577b64e73701_258.jpg

你可能感兴趣的:(MySQL高级:show profile)