博客
关于我
查询某个表上的IO情况
阅读量:782 次
发布时间:2019-03-25

本文共 1633 字,大约阅读时间需要 5 分钟。

SELECT st.dbsname, p.tabname, sum(sin.ti_nrows) as nrows, round(sum(sin.ti_nptotal*sd.pagesize/1024/1024), 2) as total_size, round(sum(sin.ti_npused*sd.pagesize/1024/1024), 2) as used_size, sum(seqscans) as seqscans, sum(pagreads) as diskreads, sum(bufreads) as bufreads, sum(bufwrites) as bufwrites, sum(pagwrites) as diskwrites, sum(pagwrites) + sum(pagreads) as disk_rsws,
trunc((decode(sum(bufreads), 0, 0, (100 - (sum(pagreads) * 100) / (sum(bufreads) + pagreads))), 2) as rbufhits, trunc((decode(sum(bufwrites), 0, 0, (100 - (sum(pagwrites) * 100) / (sum(bufwrites) + pagwrites))), 2) as wbufhits,
FROM scp20:systables s, sysmaster:sysptprof p, sysmaster:systabinfo sin, sysmaster:sysdbspaces sd, sysmaster:systabnames st
WHERE s.tabid > 99 and s.tabname = p.tabname and p.dbsname = st.dbsname and sd.dbsnum = trunc(st.partnum / 1048576) and p.partnum = st.partnum and s.tabname = st.tabname and st.dbsname = 'scp20 ' and st.partnum = sin.ti_partnum,
GROUP BY 1, 2 ORDER BY 11 DESC

注意事项:以下内容为技术查询脚本,仅供参考,请勿直接使用。

从提供的代码片段可以看到,这是一个用于数据库统计分析的SQL查询。查询从多个系统表(如systables, sysptprof等)中自定义数据,计算了多个关键指标,包括总存储区大小、使用存储区大小、序列扫描次数等。这些数据主要用于数据库性能评估和资源占用分析。

查询的具体字段包括:

  • 数据库名称(dbsname)
  • 表名称(tabname)
  • 数据行总数(nrows)
  • 总存储区大小(total_size)
  • 已使用存储区大小(used_size)
  • 序列扫描次数(seqscans)
  • 磁盘读取总次数(diskreads)
  • 缓冲区读取总次数(bufreads)
  • 缓冲区写入总次数(bufwrites)
  • 磁盘写入总次数(diskwrites)
  • 总磁盘读写次数(disk_rsws)
  • 缓冲区命中率(rbufhits)
  • 写缓冲区命中率(wbufhits)

查询条件主要包含:

  • 表ID大于99
  • 表名匹配
  • 数据库名称匹配
  • 数据分区信息匹配
  • 部分数匹配
  • 数据库名称固定为scp20
  • 部分数与统计信息匹配

最后,查询结果根据指定的排序规则进行返回,主要是按顺序降序排列。

请根据实际需求调整查询条件和排序规则,确保查询结果符合预期。

转载地址:http://ajduk.baihongyu.com/

你可能感兴趣的文章
MySQL底层概述—4.InnoDB数据文件
查看>>
MySQL底层概述—5.InnoDB参数优化
查看>>
MySQL底层概述—6.索引原理
查看>>
MySQL底层概述—7.优化原则及慢查询
查看>>
MySQL底层概述—8.JOIN排序索引优化
查看>>
MySQL底层概述—9.ACID与事务
查看>>
Mysql建立中英文全文索引(mysql5.7以上)
查看>>
mysql建立索引的几大原则
查看>>
Mysql建表中的 “FEDERATED 引擎连接失败 - Server Name Doesn‘t Exist“ 解决方法
查看>>
mysql开启bin-log日志,用于canal同步
查看>>
MySQL开源工具推荐,有了它我卸了珍藏多年Nactive!
查看>>
MySQL异步操作在C++中的应用
查看>>
MySQL引擎讲解
查看>>
Mysql当前列的值等于上一行的值累加前一列的值
查看>>
MySQL当查询的时候有多个结果,但需要返回一条的情况用GROUP_CONCAT拼接
查看>>
MySQL必知必会(组合Where子句,Not和In操作符)
查看>>
MySQL必知必会总结笔记
查看>>
MySQL快速入门
查看>>
MySQL快速入门——库的操作
查看>>
mysql快速复制一张表的内容,并添加新内容到另一张表中
查看>>