프린트 하기

 

OS환경 : Oracle Linux 6.8 (64bit)

 

DB 환경 : Oracle Database 12.2.0.1

 

방법 : oracle awr 스냅샷 snapshot 확인 및 주기 변경

기본적으로 AWR은 1시간마다 snapshot정보를 수집하고, 7일을 보관함

추후 장애 및 성능분석시 필요한 데이터가 부족할수도 있음

 

미리 AWR주기를 조정(15분 snapshot, 14일 보관)해 놓는걸 권장 

(snapshot정보도 결국은 테이블에 저장되는것이므로, AWR설정 변경후의 크기를 계산하여 sysaux를 조정해주어야함.)

* 최소 시간은 10분임

 

1. AWR repository 크기 계산하기

- 현재 사용하고 있는 AWR 크기를 참고하여 계산하기.

1
@?/rdbms/admin/awrinfo.sql

 

- AWR Interval, Retention, Num Instances, Active Sessions, Datafiles 개수를 인수로 받아 AWR크기 계산하기.

1
@?/rdbms/admin/utlsyxsz.sql

 

 

2. AWR의 Snapshot주기 및 보관시간 변경

현재 스냅샷 주기 및 보관시간 확인

1
2
3
4
5
6
7
8
9
SQL> 
set lines 200 pages 1000
col snap_interval for a30
col retention for a30
SELECT DBID, SNAP_INTERVAL, RETENTION FROM DBA_HIST_WR_CONTROL;
 
      DBID SNAP_INTERVAL          RETENTION
---------- ------------------------------ ------------------------------
4038424361  +00000 01:00:00.0          +00008 00:00:00.0

1시간 마다 수집하고, 8일간 보관함

 

 

저장된 스냅샷 확인

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
SQL> 
set lines 200 pages 1000
SELECT SNAP_ID, DBID, INSTANCE_NUMBER, TO_CHAR(BEGIN_INTERVAL_TIME, 'YYYY/MM/DD HH24:MI'),
TO_CHAR(END_INTERVAL_TIME, 'YYYY/MM/DD HH24:MI'FROM DBA_HIST_SNAPSHOT
ORDER BY DBID, INSTANCE_NUMBER, SNAP_ID;
 
   SNAP_ID     DBID INSTANCE_NUMBER TO_CHAR(BEGIN_IN TO_CHAR(END_INTE
---------- ---------- --------------- ---------------- ----------------
     1 4038424361            1 2021/02/03 11:17 2021/02/03 12:00
     2 4038424361            1 2021/02/03 12:00 2021/02/03 13:00
     3 4038424361            1 2021/02/03 13:00 2021/02/03 14:00
     4 4038424361            1 2021/02/03 14:17 2021/02/03 15:00
     5 4038424361            1 2021/02/03 15:05 2021/02/03 16:00
     6 4038424361            1 2021/02/03 16:00 2021/02/03 17:00
     7 4038424361            1 2021/02/03 17:00 2021/02/03 18:00
     8 4038424361            1 2021/02/03 18:00 2021/02/03 19:00
     9 4038424361            1 2021/02/03 19:00 2021/02/03 20:00
    10 4038424361            1 2021/02/05 16:54 2021/02/05 17:04
 
10 rows selected.

 

 

스냅샷 주기는 15분, 보관은 14일로 설정 후 확인

1
2
3
4
5
6
7
8
9
10
SQL> EXEC DBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTINGS(RETENTION=>60*24*14,INTERVAL=>15);
 
PL/SQL procedure successfully completed.
 
SQL> 
SELECT DBID, SNAP_INTERVAL, RETENTION FROM DBA_HIST_WR_CONTROL;
 
      DBID SNAP_INTERVAL          RETENTION
---------- ------------------------------ ------------------------------
4038424361 +00000 00:15:00.0          +00014 00:00:00.0

 

 

참조 : http://kosate.tistory.com/114