[Oracle] - 性能优化工具(1) - AWR

来源:互联网 发布:do not tag 淘宝网 编辑:程序博客网 时间:2024/05/22 14:28

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 0set linesize 121spool d:\awr_commit_frequently.htmlselect 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;

1 0
原创粉丝点击