目录
回忆优化SQL的步骤
1.执行SQL前开启慢查询。根据情况,一般超过5秒就是慢SQL,它会被抓取到慢查日志中
2.使用explain+慢查询日志分析SQL
3.使用更强大的show profile查询SQL语句具体的执行细节、耗时情况和生命周期情况
4.开发者调优
5.服务器参数化调优(运维)
什么是show profile
可以用来分析当前会话中语句执行的资源消耗情况,可以用于SQL的调优测量。是MySQL内置安装的一项功能,默认情况下是关闭状态,开启后默认只保存最近15次运行结果。
show profile的使用
1.首先查看show profile的开启状态
Show variables like 'profiling';

2.输入命令开启
set profiling=on;
3.执行几条SQL语句
4.查看profile中记录的信息
show profiles;

5.诊断SQL,在最后面输入上一步中显示的SQL的Query_ID
show profile cpu,block io for query 10;


6.如果第五步中Status一栏显示有以下内容,代表SQL有很大问题,需马上解决
- converting HEAP to MyISAM(查询结果太大,内存不够用了,往磁盘上搬了)
- creating tmp table(创建了临时表,sql执行了拷贝数据到临时表、用完删除临时表等操作)
- copying to tmp table on disk(把内存中临时表复制到磁盘,危险!)
- locked(锁)
本文详细介绍SQL优化的五个步骤,包括慢查询设置、使用explain分析、showprofile深入调优等,助您提升数据库性能。
991

被折叠的 条评论
为什么被折叠?



