SQL性能分析
1.SQL执行频率
SHOW GLOBAL STATUS LIKE 'COM_______';
2.慢查询日志
在MySQL的配置文件(/etc/my.conf)中配置如下信息:
#开启MySQL慢日志查询开关
slow_query_log=1
#设置慢日志的时间为2秒,SQL语句执行时间超过2秒,就会被视为慢查询,记录慢查询日志
long_query_time=2
可在/var/lib/mysql/localhost-slow.log查看慢查询日志
3.profile详情:
select @@have_profiling;
设置profiling
set profiling =1;
查看每一条SQL的耗时基本情况
show profiles;
查看指定query_id的SQL语句各个阶段的耗时情况
show profile for query query_id;
查看指定query_id的SQL语句CPU的使用情况
show profile cpu for query quert_id;
4.explain执行计划
explain + select语句
id相同,执行顺序从上到下;id不同,值越大,越先执行。
type:性能由好到差的连接类型为NULL、system、const、eq_ref、ref、range、index、all
possible_key:可能应用在这张表上的索引
key:实际使用的索引
key_len:索引中使用的字节数

浙公网安备 33010602011771号