如何创建Oracle自动工作负载存储库(AWR)报告?

时间:2017-06-02 18:09:28

标签: oracle performance awr

如何创建Oracle自动工作负载存储库(AWR)报告?

3 个答案:

答案 0 :(得分:2)

要生成AWR报告,请按以下步骤操作:

  1. 采取开始快照ID

    设置serveroutput; 宣布 v_snap_id号码; 开始 v_snap_id:= DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT; DBMS_OUTPUT.PUT_LINE(v_snap_id); 结束; /

  2. 运行您要监控的批次或程序。

  3. 结束快照ID

    设置serveroutput; 宣布 v_snap_id号码; 开始 v_snap_id:= DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT; DBMS_OUTPUT.PUT_LINE(v_snap_id); 结束; /

  4. 转到oracle目录。例如在我的情况下

    cd C:\ oraclexe \ app \ oracle \ product \ 11.2.0 \ server \ rdbms \ admin

  5. 转到sqlplus promt

    sqlplus dbusername / dbpassword @ host:port / dbenv

  6. 运行app:1-c351dae2命令

  7. 它会询问报告的格式,默认为html。

  8. 如果你不记得你的快照ID

  9. 不提供任何日期

  10. 输入begin snap

  11. 输入end snap

  12. 提供报告名称并按Enter键

  13. 您的报告将以“admin”生成,例如在我的情况下

    C:\ oraclexe \应用\ ORACLE \产品\ 11.2.0 \服务器\ RDBMS \管理员

答案 1 :(得分:1)

将sqlplus转换为Oracle作为DBA用户。运行报告sql。回答报告提示的问题以缩小时间段

sqlplus / as sysdba
@$ORACLE_HOME/rdbms/admin/awrrpt.sql

该脚本会询问您一些问题,以便您获得您感兴趣的时间段的报告。

答案 2 :(得分:1)

您可以使用dbms_workload_repository包而无需登录服务器本身。

对于文本报告,请使用例如:

select output 
from table(dbms_workload_repository.awr_report_text(1557521192, 1, 5390, 5392);

要获取HTML报告,请改用awr_report_text()

第一个参数是可以使用以下方法获得的DBID:

select dbid from v$database

第二个是实例编号。仅与RAC环境相关。

最后两个参数是开始和结束快照的ID。可以使用以下方法获取可用的快照:

select snap_id,
       begin_interval_time
       end_interval_time
from dba_hist_snapshot
order by begin_interval_time desc;

特别是对于返回CLOB的HTML返回,您必须配置SQL客户端以正确显示输出。在SQL * Plus中,您将使用set long