MySQL学习笔记之监控分析视图-sys.schema

视图摘要

类型开头描述
主机相关host_summary主要汇总了IO延迟信息
InnoDB相关innodb汇总了InnoDB的缓存信息和事务等待InnoDB锁的信息
IO相关io汇总了等待IO、IO使用量情况
内存使用情况memory从主机、线程、事件等角度展示内存的使用情况
连接语会话信息processlist和session相关视图总结了会话相关信息
表相关schema_table展示了表的统计信息
索引信息统计了索引的使用情况,包含冗余索引和未使用的索引
语句相关statement包含执行全表扫描、临时表、排序等语句信息
用户相关user统计了用户使用的文件IO、执行语句统计信息
等待事件相关wait展示等待事件的延迟情况

使用场景

索引情况

查询冗余索引

mysql> select * from sys.schema_redundant_indexes;

查询未使用过的索引

mysql> select * from sys.schema_unused_indexes;

查询索引的使用情况

mysql> select index_name, rows_selected, rows_inserted, rows_updated, rows_deleted from sys.schema_index_statistics where table_schema = 'review_mysql';

表相关

查询表的访问量

mysql> select table_schema, table_name, sum(io_read_requests + io_write_requests) as io from sys.schema_table_statistics group by table_schema, table_name order by io desc;

查询占用bufferpool较多的表

mysql> select object_schema, object_name, allocated, data from sys.innodb_buffer_stats_by_table order by allocated limit 10;

查看表的全表扫描情况

mysql> select * from sys.statements_with_full_table_scans where db = 'review_mysql';

语句相关

监控SQL执行频率

mysql> select db, exec_count, query from sys.statement_analysis order by exec_count desc;

监控使用了排序的SQL

mysql> select db, exec_count, first_seen, last_seen, query from sys.statements_with_sorting limit 1;

监控使用了临时表或磁盘临时表的SQL

mysql> select db, exec_count, tmp_tables, tmp_disk_tables, query from sys.statement_analysis where tmp_tables > 0 or tmp_disk_tables > 0 order by (tmp_tables + tmp_disk_tables) desc;

IO相关

查看消耗磁盘IO的文件:

mysql> select file, avg_read, avg_write, avg_read + avg_write as avg_io from sys.io_global_by_file_by_bytes order by avg_read limit 10;

InnoDB相关

行锁阻塞情况:

mysql> select * from sys.innodb_lock_waits;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值