概述

awr报告中的sql order by XX实际上也是根据相关sql查出来的结果,下面分享几个AWR脚本中查询资源占有的SQL,更改想要的snapid就可以查相应时间段的数据库性能信息。


1、查询awr快照ID

先查一下快照ID,后面才可以查快照时间段的问题sql。

select to_char(s.startup_time, 'dd Mon "at" HH24:mi:ss') instart_fmt, di.instance_name inst_name, di.db_name db_name, s.snap_id snap_id, to_char(s.end_interval_time, 'dd Mon YYYY HH24:mi') snapdat, s.snap_level lvl from dba_hist_snapshot s, dba_hist_database_instance di where di.dbid = s.dbid and di.instance_number = s.instance_number and di.startup_time = s.startup_time order by db_name, instance_name, snap_id;

后面演示快照ID范围:11088和11093


2、按执行时间排序

根据快照ID查询按执行时间排序的相关sql

select s.sql_id, elapsed_time / 1000000 elapsed_time, cpu_time / 1000000 cpu_time, iowait_time / 1000000 iowait_time, gets, reads, rws, clwait_time / 1000000 clwait_time, execs, st.sql_text sqt, elapsed_time / 1000000 / decode(execs, 0, null, execs) elpe from (select * from (select sql_id, sum(executions_delta) execs, sum(buffer_gets_delta) gets, sum(disk_reads_delta) reads, sum(rows_processed_delta) rws, sum(cpu_time_delta) cpu_time, sum(elapsed_time_delta) elapsed_time, sum(clwait_delta) clwait_time, sum(iowait_delta) iowait_time from dba_hist_sqlstat where snap_id > 11088 and snap_id <= 11093 group by sql_id order by sum(elapsed_time_delta) desc) where rownum <= 20) s, dba_hist_sqltext st where st.sql_id = s.sql_id order by elapsed_time desc, sql_id;

3、按消耗CPU排序

select s.sql_id, cpu_time / 1000000 cpu_time, elapsed_time / 1000000 elapsed_time, iowait_time / 1000000 iowait_time, gets, reads, rws, clwait_time / 1000000 clwait_time, execs, substr(regexp_replace(st.sql_text, '(s)+', ' '), 1, 50) sqt, ' ' nl, cpu_time / 1000000 / decode(execs, 0, null, execs) cppe, elapsed_time / 1000000 / decode(execs, 0, null, execs) elpe, iowait_time / 1000000 / decode(execs, 0, null, execs) iope, gets / decode(execs, 0, null, execs) bpe, reads / decode(execs, 0, null, execs) rpe, rws / decode(execs, 0, null, execs) rwpe, clwait_time / 1000000 / decode(execs, 0, null, execs) clpe, ' ' ep, st.sql_text sqtn from (select * from (select sql_id, sum(executions_delta) execs, sum(buffer_gets_delta) gets, sum(disk_reads_delta) reads, sum(rows_processed_delta) rws, sum(cpu_time_delta) cpu_time, sum(elapsed_time_delta) elapsed_time, sum(iowait_delta) iowait_time, sum(clwait_delta) clwait_time from dba_hist_sqlstat where snap_id > 11088 and snap_id <= 11093 group by sql_id order by sum(cpu_time_delta) desc) where rownum <= 10) s, dba_hist_sqltext st where st.sql_id = s.sql_id order by cpu_time desc, sql_id;

4、按I/O排序

select s.sql_id, iowait_time / 1000000 iowait_time, elapsed_time / 1000000 elapsed_time, cpu_time / 1000000 cpu_time, gets, reads, rws, clwait_time / 1000000 clwait_time, execs, substr(regexp_replace(st.sql_text, '(s)+', ' '), 1, 50) sqt, ' ' nl, iowait_time / 1000000 / decode(execs, 0, null, execs) iope, elapsed_time / 1000000 / decode(execs, 0, null, execs) elpe, cpu_time / 1000000 / decode(execs, 0, null, execs) cppe, gets / decode(execs, 0, null, execs) bpe, reads / decode(execs, 0, null, execs) rpe, rws / decode(execs, 0, null, execs) rwpe, clwait_time / 1000000 / decode(execs, 0, null, execs) clpe, ' ' ep, substr(regexp_replace(st.sql_text, '(s)+', ' '), 51, 50) sqtn from (select * from (select sql_id, sum(executions_delta) execs, sum(buffer_gets_delta) gets, sum(disk_reads_delta) reads, sum(rows_processed_delta) rws, sum(cpu_time_delta) cpu_time, sum(elapsed_time_delta) elapsed_time, sum(iowait_delta) iowait_time, sum(clwait_delta) clwait_time from dba_hist_sqlstat where snap_id > 11088 and snap_id <= 11093 group by sql_id order by sum(iowait_delta) desc) where rownum <= 20) s, dba_hist_sqltext st where st.sql_id = s.sql_id order by iowait_time desc, reads desc, sql_id;

5、按gets排序

select s.sql_id, gets, reads, elapsed_time / 1000000 elapsed_time, cpu_time / 1000000 cpu_time, iowait_time / 1000000 iowait_time, rws, clwait_time / 1000000 clwait_time, execs, substr(regexp_replace(st.sql_text, '(s)+', ' '), 1, 50) sqt, ' ' nl, gets / decode(execs, 0, null, execs) bpe, reads / decode(execs, 0, null, execs) rpe, elapsed_time / 1000000 / decode(execs, 0, null, execs) elpe, cpu_time / 1000000 / decode(execs, 0, null, execs) cppe, iowait_time / 1000000 / decode(execs, 0, null, execs) iope, rws / decode(execs, 0, null, execs) rwpe, clwait_time / 1000000 / decode(execs, 0, null, execs) clpe, ' ' ep, substr(regexp_replace(st.sql_text, '(s)+', ' '), 51, 50) sqtn from (select * from (select sql_id, sum(executions_delta) execs, sum(buffer_gets_delta) gets, sum(disk_reads_delta) reads, sum(rows_processed_delta) rws, sum(cpu_time_delta) cpu_time, sum(elapsed_time_delta) elapsed_time, sum(iowait_delta) iowait_time, sum(clwait_delta) clwait_time from dba_hist_sqlstat where snap_id > 11088 and snap_id <= 11093 group by sql_id order by sum(buffer_gets_delta) desc) where rownum <= 20) s, dba_hist_sqltext st where st.sql_id = s.sql_id order by gets desc, cpu_time desc, sql_id;

6、按执行次数排序

select s.sql_id, execs, elapsed_time / 1000000 elapsed_time, cpu_time / 1000000 cpu_time, iowait_time / 1000000 iowait_time, gets, reads, rws, clwait_time / 1000000 clwait_time, substr(regexp_replace(st.sql_text, '(s)+', ' '), 1, 50) sqt, ' ' nl, ' ' ep, elapsed_time / 1000000 / decode(execs, 0, null, execs) elpe, cpu_time / 1000000 / decode(execs, 0, null, execs) cppe, iowait_time / 1000000 / decode(execs, 0, null, execs) iope, gets / decode(execs, 0, null, execs) bpe, reads / decode(execs, 0, null, execs) rpe, rws / decode(execs, 0, null, execs) rwpe, clwait_time / 1000000 / decode(execs, 0, null, execs) clpe, substr(regexp_replace(st.sql_text, '(s)+', ' '), 51, 50) sqtn from (select * from (select sql_id, sum(executions_delta) execs, sum(buffer_gets_delta) gets, sum(disk_reads_delta) reads, sum(rows_processed_delta) rws, sum(cpu_time_delta) cpu_time, sum(elapsed_time_delta) elapsed_time, sum(iowait_delta) iowait_time, sum(clwait_delta) clwait_time from dba_hist_sqlstat where snap_id > 11089 and snap_id <= 11092 group by sql_id order by sum(executions_delta) desc) where rownum <= 20) s, dba_hist_sqltext st where st.sql_id = s.sql_id order by execs desc, sql_id;

有时大家不想查awr报告的话也可以用这几个sql来自定义获取需要的信息。根据需要修改就可以了。

后面会分享更多DBA方面内容,感兴趣的朋友可以关注下!

sql查两个时间内的数据_如何通过AWR的sql脚本查执行时间、消耗CPU、gets、I/0等的sql?...相关推荐

  1. SQL Server两表比对数据

    sql server两表比对数据是否完全一直 使用sql server的tablediff工具进行比对 打开cmd cd切换路径到你sqlserver数据库的这个目录下:Microsoft SQL S ...

  2. sql同时修改两个表的数据_如何用SQL做数据透视表?

    - 点击上方"中国统计网"订阅我吧!- 讲过很多次,数据分组和数据透视表很像,Sql 中的数据分组大家应该都很熟悉了,用的就是 group by. 数据透视表是作为一个数据分析师最 ...

  3. sql 一对多获得一条数据_从真实销售数据获得insights——SQL部分

    数据来源:国外一个女装电商的订单.产品.客户.流量等数据,已经脱敏 目的:熟悉MYSQL和python在提取数据和处理数据的操作,并从人.货.场. 分组分析留存方面,在数据中发现insights,了解 ...

  4. oracle取两个小时内的数据,【求解】一个时间条件,查两个不同时间段数据怎么查...

    建表脚本 create table a_test7 ( date       DATE, aproduct VARCHAR2(32), num       NUMBER, amount   NUMBE ...

  5. 同时删除两张表的数据_把数据表中对应工作表的数据首先删除,然后导入数据...

    大家好,我们今日继续讲解VBA数据库解决方案的第28讲内容:利用VBA,把数据表中对应工作表的数据首先删除,然后向数据表中导入工作表数据.数据库的讲解已经持续一段时间了,从对简单数据库的认识到利用VB ...

  6. datatables 一列显示两个字段的数据_【tableau入门教程16】计算字段

    有时数据表中的原始维度和度量并不满足我们的需求,因此可通过计算字段功能,利用各种函数新建字段. 创建字段步骤 1.在侧栏 创建计算字段 2.拖曳字段到输入框或是输入部分字段名称选择字段,当输入框下面显 ...

  7. mysql同时查两张表数据库表_如何同时查询两个数据库表?

    展开全部 sql多表关联查询跟条件查询大同小异,主要是要知道表与表之前的关系很重e69da5e6ba9062616964757a686964616f31333431353238要: 举例说明:(某数据 ...

  8. 如何区分两列中不同数据_如何区分原装数据线和山寨数据线

    手机数据线是我们几乎每天都要用到的东西,有时候当我们原装的数据选不慎丢失或者损坏时,我们就需要再次购买数据线了.今天我们就苹果手机的lignting接口的数据线来说说如何正确选购一条原装的数据线呢? ...

  9. SQL合并两个表的数据

    1.表头不一致的情况,使用JOIN语句 left join    (左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录  right join   (右联接) 返回包括右表中的所有记录和左表 ...

最新文章

  1. 杀手洗车房:黑客能困住并攻击汽车
  2. jmeter中控制器其中一个访问不到_Jmeter体系结构和运行原理
  3. Android ExpandableListView几个特殊的属性
  4. SAP云平台cf push命令报错误码44的解决方法
  5. 计算机在智能交通应用,计算机技术在智能交通系统的应用
  6. redis lua 设置过期_详解 Redis 内存管理机制和实现
  7. 命令:服务器与CST时间误差8小时的修复方法——timedatectl
  8. Practical Tactics for Social Intercourse One
  9. 关于static继承的问题
  10. 微软云计算介绍与实践(实践之二十七)
  11. leetcode 名单 Insertion Sort List
  12. 2020-09-26-舵机+两相4线步进电机
  13. 重新理解创业:一个创业者的途中思考
  14. Python3 打包成exe时,去掉dos窗口
  15. 数据读取的常见函数以及区别(fopen、open、textscan、fwrite、fread函数)
  16. ems苹果专线投递速度_苹果官网运抵速度让人欲罢不能
  17. 如何破解自如的反爬机制
  18. 阿里云服务器1核1G内存1M带宽能放几个网站及多少流量
  19. 操作系统实验ucore_lab5实验报告
  20. C++设计模式之工厂模式

热门文章

  1. CAPSNET:具有自我注意路由的胶囊网络
  2. druid+spring配置
  3. hdu-1847-畅桶工程续
  4. 数据库like匹配的实现猜测
  5. 【C++基础学习】C++中的引用
  6. OraOps10.dll不能加载
  7. Memory Information on Windows Mobile(续)
  8. python类方法可以访问类变量_python类变量可以从类方法访问? - python
  9. 如何选择容器注册表?这里给出九个选项
  10. Linux其实非常好学