AWR 성능 data를 내 서버에서 export 해서 타 서버로 import 방법

-------------------------------------------------------------

1. pump로 사전에 미리 디렉토리 생성

 

SQL> create or replace directory AWR_PUMP as '/home/oracle';

 

2. awrext.sql 실행 (SYS로 접속해야 함)

 

SQL> @?/rdbms/admin/awrextr.sql

 

 - database id를 입력
 - display될 snapshot id의 기간을 일단위로 입력
 - export받을 begin snapshot id와 end snapshot id 입력
 - export받는 데이터 파일이 생성될 oracle directory명 입력
 - export받을 file명(기본으로 dmp 확장자가 붙으니 file명만 입력)

 

3. FTP로 dmp 화일을 pump에서 지정했던 디렉토리로 전송해서 sourec 에서 import

 

4. awrload.sql 실행

 

SQL>@?/rdbms/admin/awrload.sql

 

이때 export 받은 DBID와 동일한 장비에서는 import 가 되지 않으므로 다른 DBID 를 지정해 주어야 한다.
(다른 서버에서 해야된다.자기 장비에서는 안된다는 말씀,해보면 에러난다.)

 

5. 다른 DBID를 지정하기 위해서 awrinput.sql 수행

 

SQL>@?/rdbms/admin/awrinput.sql


SQL>@?/rdbms/admin/awrload.sql

 

 - export 파일을 복사한 Oracle directory명 입력
 - export file명 입력 (입력받은 file명에 기본으로 dmp 확장자가 붙으니 확장자를 제외한 file명만 입력)
 - import할 동안 사용될 임시 user명을 입력 (이 user는 import가 완료되면 자동으로 삭제되니 기본값을 사용)
 - 임시 user가 사용할 default tablespace 입력(변경 가능하나 기본값을 사용)
 - 임시 user가 사용할 임시 tablespace 입력(변경 가능하나 기본값을 사용)

 import가 진행되며 Data는 AWR 테이블인 WRH$ 테이블에 import 데이터를 migration 하게된다. 이후 import시 사용한 임시 user는 cascade 옵션으로 자동 삭제된다.

 

6. 새롭게 적재된 Data 를 간단히 조회만 해서 보고자 할 경우

 

SQL> select dbid,instance_number as inst_id, db_name, instance_name as inst_name from dba_hist_database_instance;

 

SQL> select * dba_hist_snapshot where dbid='2200200976' -- 보고싶은 snapshot id 범위 확인

 

아래 쿼리로 AWR report 생성

 

SPOOL AWR_TEST.HTML
SET LINESIZE 200 PAGES 0
select output from table (dbms_workload_repository.awr_report_html(
'2200200976',   -- DBID
'1',            -- Instance #
'14',           -- begin Snapshut ID
'16',           -- End Snapshut ID
0 )             -- Report option (0: Default / 8: Including ADDM Information (as a Advice)

);

 

Posted by pat98

12-19 06:25
Flag Counter
Yesterday
Today
Total

글 보관함

최근에 올라온 글

달력

 « |  » 2024.12
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

최근에 달린 댓글