0
点赞
收藏
分享

微信扫一扫

MySQL资源消耗查询SQL汇总

解决方案

1.查看哪些sql执行最多

SELECT SCHEMA_NAME,DIGEST_TEXT,COUNT_STAR,SUM_ROWS_SENT,SUM_ROWS_EXAMINED,FIRST_SEEN,LAST_SEEN

FROM performance_schema.events_statements_summary_by_digest

where SCHEMA_NAME is not null and SCHEMA_NAME !='information_schema'

ORDER BY COUNT_STAR desc LIMIT 1;

 

2.哪个SQL平均响应时间最多

 

SELECT SCHEMA_NAME,DIGEST_TEXT,COUNT_STAR,AVG_TIMER_WAIT,SUM_ROWS_SENT,SUM_ROWS_EXAMINED,FIRST_SEEN,LAST_SEEN

FROM performance_schema.events_statements_summary_by_digest

where SCHEMA_NAME is not null and SCHEMA_NAME !='information_schema'

ORDER BY AVG_TIMER_WAIT desc LIMIT 1;

 

3.哪个SQL扫描的行数最多(IO消耗)

 

SELECT SCHEMA_NAME,DIGEST_TEXT,COUNT_STAR,AVG_TIMER_WAIT,SUM_ROWS_SENT,SUM_ROWS_EXAMINED,FIRST_SEEN,LAST_SEEN

FROM performance_schema.events_statements_summary_by_digest

where SCHEMA_NAME is not null and SCHEMA_NAME !='information_schema'

ORDER BY SUM_ROWS_EXAMINED desc LIMIT 1;

 

4.哪个SQL使用的临时表最多

 

SELECT SCHEMA_NAME,DIGEST_TEXT,SUM_CREATED_TMP_DISK_TABLES,SUM_CREATED_TMP_TABLES,FIRST_SEEN,LAST_SEEN

FROM performance_schema.events_statements_summary_by_digest

where SCHEMA_NAME is not null and SCHEMA_NAME !='information_schema'

ORDER BY SUM_CREATED_TMP_DISK_TABLES desc LIMIT 1;

 

5.哪个SQL返回的结果集最多(net消耗)

 

SELECT SCHEMA_NAME,DIGEST_TEXT,COUNT_STAR,SUM_ROWS_SENT,SUM_ROWS_SENT,FIRST_SEEN,LAST_SEEN

FROM performance_schema.events_statements_summary_by_digest

where SCHEMA_NAME is not null and SCHEMA_NAME !='information_schema'

ORDER BY SUM_ROWS_SENT desc LIMIT 1;

 

6.哪个SQL排序数最多(CPU消耗)

SELECT SCHEMA_NAME,DIGEST_TEXT,COUNT_STAR,SUM_ROWS_SENT,SUM_SORT_ROWS,FIRST_SEEN,LAST_SEEN

FROM performance_schema.events_statements_summary_by_digest

where SCHEMA_NAME is not null and SCHEMA_NAME !='information_schema'

ORDER BY SUM_SORT_ROWS desc LIMIT 5;

 

7.哪个表、文件逻辑IO最多(热数据)

SELECT FILE_NAME,EVENT_NAME,COUNT_READ,SUM_NUMBER_OF_BYTES_READ,COUNT_WRITE,SUM_NUMBER_OF_BYTES_WRITE

FROM performance_schema.file_summary_by_instance

ORDER BY SUM_NUMBER_OF_BYTES_READ+SUM_NUMBER_OF_BYTES_WRITE DESC LIMIT 2;

 

8.哪个索引使用最多

SELECT OBJECT_NAME, INDEX_NAME, COUNT_FETCH, COUNT_INSERT, COUNT_UPDATE, COUNT_DELETE

FROM performance_schema.table_io_waits_summary_by_index_usage

ORDER BY SUM_TIMER_WAIT DESC limit 1;

 

9.哪个索引没有使用过

SELECT OBJECT_SCHEMA, OBJECT_NAME, INDEX_NAME

FROM performance_schema.table_io_waits_summary_by_index_usage

WHERE INDEX_NAME IS NOT NULL AND COUNT_STAR = 0 AND OBJECT_SCHEMA <> 'mysql'

ORDER BY OBJECT_SCHEMA,OBJECT_NAME;

 

10.哪个等待事件消耗的时间最多

SELECT EVENT_NAME, COUNT_STAR, SUM_TIMER_WAIT, AVG_TIMER_WAIT

FROM events_waits_summary_global_by_event_name

WHERE event_name != 'idle'he

ORDER BY SUM_TIMER_WAIT DESC LIMIT 1;

备注:

因为这些SQL多事基于performance_schema基础的。在mysql目前环境中ps库的指标无法做到100%的信息正确。所以仅作为参考方式

举报

相关推荐

0 条评论