DBA用户登录操作
操作步骤
测试前和测试后各自生成一次快照,记录snap_id,awr报告则是这两次快照之间的报告:
注意:使用命令窗口command window执行:
exec DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT();
或SQL窗口执行命令:
BEGIN
DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT();
END;
快照生成后查询snap_id:
select * from dba_hist_snapshot order by 1 desc;
通过PL/SQL Developer工具生成数据库AWR性能报告。操作步骤如下:
01、在PLDEV的SQL窗口执行如下脚本:
select t.snap_id,
t.dbid,
t.instance_number,
t.begin_interval_time,
t.end_interval_time
from dba_hist_snapshot t
where instance_number = 1
order by snap_id desc
02、取出需要采集的时间段的首位snap_id,将值依次填写如下脚本中,并在SQL窗口中执行。
例如:要生成5月6日下午3时至4时的AWR报告,那么执行如下脚本,将上图中取到的结果填入脚本中:
select * from table(dbms_workload_repository.awr_report_html(
2037073375, --DBID
1, --INSTANCE_NUMBBER
17244, --SNAP_ID(起始值)
17245)) --SNAP_ID(最终值)
将SQL窗口的执行结果全部拷贝到TXT文档中,并改名为html的后缀名即可。
awr报告导出时间跨度不可太长,跨度过长会导致分析不出来,执行以下SQL会报错:
select * from table(dbms_workload_repository.awr_report_html(
2037073375, --DBID
1, --INSTANCE_NUMBBER
17244, --SNAP_ID(起始值)
17245)) --SNAP_ID(最终值)
报错信息: