该脚本只是把awr报告的内容,原封不动的 展现出来,做记录
awrreport.sql 脚本内容如下:
*******************************************************
#该脚本请用具有 dba 权限的用户执行,普通用户没有权限访问数据库的基表set linesize 1200 ;set pagesize 0;set long 99999;set heading off;--set termout off;set echo off;set feedback off;set timing off;set serveroutput on;exec dbms_output.put_line('report_name,for example:hydk');spool awrrpt_tmp.sql; select'spool &report_name'||'_awrrpt_'||snap_id||'_'||(snap_id+1)||'.lst'||chr(10)||'select output '||chr(10)||' from table(dbms_workload_repository.awr_report_text('||dbid||',1,'||snap_id||','||(snap_id+1)||'));'||chr(10)||'spool off;'||chr(10)from dba_hist_snapshot;whenever sqlerror continue; --默认情况下,数据库实例重启,那么重启前后的 快照是不能使用的。测试 过程会 中断、退出。添加此处 忽略 报错,继续执行spool off ;@awrrpt_tmp.sql;---- 这里要等一段时间,多敲几下回车以保证上面的语句都执行 ---host del awrrpt_tmp.sql;exit;
*******************************************************
执行该脚本之后,会在当前目录生成很多 .lst的文件。
2. 借用oracle数据库的perl工具,解析该 .lst 文件
perl工具解析数据库报告文件首先进入perl文件的绝对路径,perl文件是oracle软件包附带的,其绝对路径如下:
然后把数据库的报告文件拷贝到当前目录,使用如下命令解析报告
因为是在当前路径下操作,所以不必指定报告文件
解析完成之后,会生成以下三个文件
简单查看文件内容
转载于:https://www.cnblogs.com/iyoume2008/p/5048611.html
相关资源:利用AWR工具收集数据库信息