oracle10g提供了awr报告,系统默认是每一个小时,实例自动记录一次,无论是性能测试过程、还是实时生产环境,这个报告都相当有用,简单说明一下获取awr报告的过程:
可以用sys/manager(as sysdba)用户登录
SQL> conn / AS SYSDBA
SQL> var snap_id number
SQL> exec :snap_id:=dbms_workload_repository.create_snapshot
SQL> print snap_id
SNAP_ID
----------
182 //当前产生的快照编号
SQL> @?/rdbms/admin/awrrpt.sql
rdbms/admin/awrrpt.sql文件为oracle的系统文件,可以先在SecureCRT中查找到具体的目录位置(find / -name rdbms -type d)
如果在plsql中执行上述语句报找不到文件(Error reading file)的话,可以把rdbms/admin目录下的所有文件复制到本机,然后再执行本机的awrrpt.sql文件。
输入 report_type 的值:
输入 num_days 的值: 1 //查看快照的天数 默认保存7天的快照信息
输入 begin_snap 的值: 181 //取快照的起始编号
输入 end_snap 的值: 182 //取快照的结尾编号
输入 report_name 的值:
Stopped spooling to D:\非安装软件\PLSQL Developer 7.0.1 中文版\PLSQL Developer\awrrpt_1_181_182.html(快照文件保存的路径)
Report written to awrrpt_1_181_182.html
SQL> exit
下载awrrpt_1_181_182.html并打开查看。采用默认文件名>默认为html类型>