mysql数据库5.7 查询为空_mysql 5.7后使用sys数据库下的表查询数据库性能状况

浅谈MySQL5.7 sys schema

学习使用MySQL 5.7的sys库

1. 谁使用了最多的资源? 基于ip或是用户?

对于该问题可以从host, user, io三个方面去了解,大概谁的请求最多。对于使用资源问题可以直接从下面四个视图里有一个

大概的了解。

select * from host_summary limit 1\G;

select * from io_global_by_file_by_bytes limit 1\G;

select * from user_summary limit 1\G;

select * from memory_global_total\G;

注意:内存部分,不包括innodbbuffer pool。只是server 层申请的内存

2. 大部分连接来自哪里及发送的sql情况

查看当前连接情况:

select host, current_connections,statements from host_summary;

查看当前正在执行的sql:

select conn_id, user, current_statement, last_statement from session;

3. 机器执行最多的sql语句是什么样?

查询系统里执行最多的top 10 sql:

select * from statement_analysis order byexec_count desc limit 10\G;

4. 哪张表的io最多?哪张表访问次数最多

select * from io_global_by_file_by_bytes limit 10;

哪张表访问次数最多,可以参考上面先查询执行最多的语句,然后查找对应的表,

sql如下:

select * from statement_analysis order by exec_count desc limit 10\G;

5. 哪些语句延迟比较严重

statement_analysis中avg_latency的最高的,sql语句:

select * from statement_analysis order by avg_latency desc limit 10\G;

6. 哪些sql语句使用了磁盘临时表

利用statement_analysis 中tmp_tables ,tmp_disk_tables 进行计算,参考sql:

select db, query, tmp_tables,tmp_disk_tables  from statement_analysis where tmp_tables>0 or tmp_disk_tables >0

order by(tmp_tables+tmp_disk_tables) desc limit 20;

7. 哪张表占用了最多的buffer pool

查询在buffer pool中占用前10的表,sql如下:

select * from innodb_buffer_stats_by_tableorder by pages desc limit 10;

8. 每个库占用多少buffer pool

select * from innodb_buffer_stats_by_schema;

9. 每个连接分配多少内存

利用session表和memory_by_thread_by_current_bytes分配表进行关联查询,

sql如下:

select b.user, current_count_used,current_allocated, current_avg_alloc, current_max_alloc,total_allocated,

current_statement from memory_by_thread_by_current_bytes a,session b where a.thread_id = b.thd_id;

10. mysql内部现在有多个线程在运行

mysql内部的线程类型及数量:

select user, count(*) from processlistgroup by user;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值