[Oracle] - 性能优化工具(1) - AWR
AWR快照
默认情况下,Oracle每隔一小时会自动产生一个快照,保存最近8天的快照。
我们可以通过如下语句获得产生快照的时间间隔和保存的天数:
SYS@orcl(lx15)> select SNAP_INTERVAL,RETENTION from dba_hist_wr_control; SNAP_INTERVAL RETENTION --------------------------------------------------------------------------- --------------------------------------------------------------------------- +00000 01:00:00.0 +00008 00:00:00.0可以通过如下语句修改这两个值(以分钟为单位):
exec dbms_workload_repository.modify_snapshot_settings(interval => 30, retention = > 10*24*60);当然,你也可以随时手动产生一个快照:
exec dbms_workload_repository.create_snapshot;
AWR报告生成
@?/rdbms/admin/awrrpt.sql还有一种方法是直接调用ORALCE的包,这个方法适合用在写自动获取脚本工具的场景,如下所示:
set pagesize 0 set linesize 121 spool d:\awr_commit_frequently.html select output from table(dbms_workload_repository.awr_report_html(977587123,1,1920,1921)); spool off 注: DBMS_WORKLOAD_REPOSITORY.AWR_REPORT_HTML( l_dbid IN NUMBER, l_inst_num IN NUMBER, l_bid IN NUMBER, l_eid IN NUMBER, l_options IN NUMBER DEFAULT 0) RETURN awrrpt_text_type_table PIPELINED;
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。