[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报告生成

有了快照之后,就能够生成AWR报告了,你用sysdba运行例如以下命令,依据提示一步一步操作就可以:
@?/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;

[Oracle] - 性能优化工具(1) - AWR,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。