实际工作中,存在这么一种场景。客户现场分析问题,无法立即得出结论,且无法远程服务器,因此对于服务器中的awr信息,如何提取是一个问题,oracle有脚本可以对服务器中以db为单位导出awr基表的dump文件
测试操作流程:
1.10.2.0.4 测试库,awr dump导出
2.11.2.0.4测试库,awr dump导入
3.11.2.0.4测试库,使用脚本创建awr报告
1.10.2.0.4 测试库,awr dump导出
SQL> select * from dba_directories; OWNER DIRECTORY_NAME DIRECTORY_PATH -------------------------------------------------------------------------------- SYS DUMP /10.2.0.4/dump SQL> @?/rdbms/admin/awrextr.sql
--根据脚本,输入导出天数,begin end snap id ,使用指定转储路径,输入dump文件名称
使用数据泵sqlfile,导出逻辑sql,发现均为oracle awr基表信息
impdp system/oracle dumpfile=10204_awr_dump.dmp sqlfile=awr_dump.sql directory=DUMP -- CONNECT SYSTEM -- new object type path is: TABLE_EXPORT/TABLE/TABLE CREATE TABLE "SYS"."WRH$_FILESTATXS" ( "SNAP_ID" NUMBER NOT NULL ENABLE, "DBID" NUMBER NOT NULL ENABLE, "INSTANCE_NUMBER" NUMBER NOT NULL ENABLE, "FILE#" NUMBER NOT NULL ENABLE, "CREATION_CHANGE#" NUMBER NOT NULL ENABLE, "PHYRDS" NUMBER, "PHYWRTS" NUMBER, "SINGLEBLKRDS" NUMBER, "READTIM" NUMBER, "WRITETIM" NUMBER, "SINGLEBLKRDTIM" NUMBER, "PHYBLKRD" NUMBER, "PHYBLKWRT" NUMBER, "WAIT_COUNT" NUMBER, "TIME" NUMBER ) PCTFREE 1 PCTUSED 40 INITRANS 1 MAXTRANS 255 STORAGE( BUFFER_POOL DEFAULT) TABLESPACE "SYSTEM" PARTITION BY RANGE ("DBID","SNAP_ID") (PARTITION "WRH$_FILEST_3049682047_49" VALUES LESS THAN (3049682047, MAXVALUE)
2.11.2.0.4测试库,awr dump导入
根据脚本内容,输入转储目录,及dump文件名称,导入使用默认的用户即可 或者新创建一个普通用户,授予必要的权限。
create directory test_dir as '/10.2.0.4/dump'; SQL> @?/rdbms/admin/awrload.sql
导入完毕后,通过如下视图,可以发现不同的dbid
SQL> select snap_id,dbid,instance_number,to_char(begin_interval_time,'yyyy-mm-dd hh24:mi:ss.ff') from dba_hist_snapshot where begin_interval_time >sysdate-10; SNAP_ID DBID INSTANCE_NUMBER TO_CHAR(BEGIN_INTERVAL_TIME,'YYYY-MM-DDHH24:MI:SS.FF') ---------- ---------- --------------- ---------------------------------------------------------- 64 3049682047 1 2019-01-14 05:00:33.134 65 3049682047 1 2019-01-21 01:52:31.920 59 699220720 1 2019-01-13 03:00:45.065 58 699220720 1 2019-01-13 02:00:43.205 60 699220720 1 2019-01-14 02:59:11.662 61 699220720 1 2019-01-14 04:00:06.282 62 699220720 1 2019-01-14 05:00:08.506 7 rows selected.
3.11.2.0.4测试库,使用脚本创建awr报告
选用如下脚本,核心是可以选择不同的dbid,例如awrrpt.sql仅选择当前实例,无法选择其它dbid
@$ORACLE_HOME/rdbms/admin/awrrpti.sql