적용 대상 : 11.1.0.6 to 11.2.0.2 [Release 11.1 to 11.2]
오라클 11g 데이터베이스에는 세 가지 자동화된 유지 관리 작업이 있다 :
자동 최적기 통계 수집(Automatic Optimizer Statistics Collection)
통계가 없거나 오래된 통계를 가지고 있는 데이터베이스 안의 모든 스키마 객체에 대해 최적기 통계를 수집한다.이 작업에 의해 생성되어지는 통계는 SQL 실행 시 성능을 향상시키기 위하여 SQL 쿼리 최적기에 의해서 사용되어 진다.
자동 세그먼트 권고자 (Automatic Segment Advisor)
회수 가능한 공간을 가지는 세그먼트를 구별하고, 해당 세그먼트를 어떻게 조각모음 할 건지에 대한 권장 사항을 만든다. 최신의 권장 사항을 확보하거나 자동 세그먼트 권고자가 회수 가능한 공간을 검토 하지 않은 세그먼트의 권장 사항을 확보하기 위하여 수동으로 세그먼트 권고자를 실행할 수 있다.
자동 SQL 튜닝 권고자(Automatic SQL Tuning Advisor)
높은 부하를 가지는 SQL 문장의 성능을 검사하고, 그 문장을 어떻게 튜닝 할 것인지에 대한 권장 사항을 만든다. SQL 프로파일 권장 사항을 자동으로 구현하기 위하여 이 권고자를 구성할 수 있다.
Oracle10g에서 이 작업들은 별도의 작업으로 생성 되었으며 DBA_SCHEDULER_JOBS.JOB_NAME에서 볼 수 있었다.
SQL> select owner,job_name,schedule_name, schedule_type, enabled from dba_scheduler_jobs;
OWNER JOB_NAME SCHEDULE_NAME SCHEDULE_TYP ENABL
--------------- ------------------------------ ------------------------------ ------------ -----
SYS PURGE_LOG DAILY_PURGE_SCHEDULE NAMED TRUE
SYS FGR$AUTOPURGE_JOB CALENDAR FALSE
SYS GATHER_STATS_JOB MAINTENANCE_WINDOW_GROUP WINDOW_GROUP TRUE
SYS AUTO_SPACE_ADVISOR_JOB MAINTENANCE_WINDOW_GROUP WINDOW_GROUP TRUE
GATHER_STATS_JOB, AUTO_SPACE_ADVISOR_JOB 가 enabled인것을 확인 할수 있다.
오라클 11g에서 변경되었다. 관련된 뷰는 DBA_AUTOTASK_WINDOW_CLIENTS이다.
이제 이 작업들은 시스템에서 실제로 실행 되고 난 후 생성된 이름을 DBA_SCHEDULER_JOBS에서 볼 수 있다.
SQL> desc DBA_AUTOTASK_WINDOW_CLIENTS
Name Null? Type
----------------------------------------- -------- ----------------------------
WINDOW_NAME NOT NULL VARCHAR2(30)
WINDOW_NEXT_TIME TIMESTAMP(6) WITH TIME ZONE
WINDOW_ACTIVE VARCHAR2(5)
AUTOTASK_STATUS VARCHAR2(8)
OPTIMIZER_STATS VARCHAR2(8)
SEGMENT_ADVISOR VARCHAR2(8)
SQL_TUNE_ADVISOR VARCHAR2(8)
HEALTH_MONITOR VARCHAR2(8)
OPTIMIZER_STATS가 Status of optimizer statistics gathering 을 나타낸다.
select * from DBA_AUTOTASK_WINDOW_CLIENTS;
WINDOW_NAME WINDOW_NEXT_TIME WINDOW_ACT
-------------------- ---------------------------------------- ----------
AUTOTASK_STATUS OPTIMIZER_STATS SEGMENT_ADVISOR SQL_TUNE_ADVISOR
---------------- ---------------- ---------------- ----------------
HEALTH_MONITOR
----------------
MONDAY_WINDOW 17-FEB-14 10.00.00.000000 PM ASIA/SEOUL FALSE
ENABLED ENABLED ENABLED ENABLED
DISABLED
TUESDAY_WINDOW 18-FEB-14 10.00.00.000000 PM ASIA/SEOUL FALSE
ENABLED ENABLED ENABLED ENABLED
DISABLED
WEDNESDAY_WINDOW 12-FEB-14 10.00.00.000000 PM ASIA/SEOUL FALSE
ENABLED ENABLED ENABLED ENABLED
DISABLED
THURSDAY_WINDOW 13-FEB-14 10.00.00.000000 PM ASIA/SEOUL FALSE
ENABLED ENABLED ENABLED ENABLED
DISABLED
FRIDAY_WINDOW 14-FEB-14 10.00.00.000000 PM ASIA/SEOUL FALSE
ENABLED ENABLED ENABLED ENABLED
DISABLED
SATURDAY_WINDOW 15-FEB-14 06.00.00.000000 AM ASIA/SEOUL FALSE
ENABLED ENABLED ENABLED ENABLED
DISABLED
SUNDAY_WINDOW 16-FEB-14 06.00.00.000000 AM ASIA/SEOUL FALSE
ENABLED ENABLED ENABLED ENABLED
DISABLED
7 rows selected.
모든 윈도들의 모든 자동화된 유지 관리 작업을 설정하거나 해제하려면 인수 없이 설정 또는 해제 프로시저를 호출한다.
특정한 유지 관리 작업을 해제하기 위하여 다음과 같이 해제 프로시저를 사용한다 :
dbms_auto_task_admin.disable(
client_name => 'sql tuning advisor',
operation => NULL,
window_name => NULL);
END;
/
특정한 유지 관리 작업을 다시 설정하기 위하여 다음과 같이 설정 프로시저를 사용한다 :
dbms_auto_task_admin.enable(
client_name => 'sql tuning advisor',
operation => NULL,
window_name => NULL);
END;
/
client_name 인수에 사용할 작업 이름은 DBA_AUTOTASK_CLIENT 데이터베이스 딕셔너리 뷰 안에 나열되어 있다.
auto optimizer stats collection
auto space advisor
sql tuning advisor
또 다른 차이점은 사전에 정의된 스케줄러 윈도다 :
- Oracle10g : WEEKNIGHT_WINDOW and WEEKEND_WINDOW
- Oracle11g : MONDAY_WINDOW .... SUNDAY_WINDOW.
WEEKNIGHT_WINDOW와 WEEKEND_WINDOW는 이전 버전과의 호환성을 위해 아직 존재한다.
--10g SQL> select window_name, repeat_interval, duration
2 from dba_scheduler_windows;
WINDOW_NAME REPEAT_INTERVAL
------------------------------ --------------------------------------------------------------------------------
DURATION
---------------------------------------------------------------------------
WEEKNIGHT_WINDOW freq=daily;byday=MON,TUE,WED,THU,FRI;byhour=22;byminute=0; bysecond=0
+000 08:00:00
WEEKEND_WINDOW freq=daily;byday=SAT;byhour=0;byminute=0;bysecond=0
+002 00:00:00
--11g SQL> select window_name, repeat_interval, duration
2 from dba_scheduler_windows;
WINDOW_NAME REPEAT_INTERVAL
-------------------- --------------------------------------------------------------------------------
DURATION
---------------------------------------------------------------------------
MONDAY_WINDOW freq=daily;byday=MON;byhour=22;byminute=0; bysecond=0
+000 04:00:00
TUESDAY_WINDOW freq=daily;byday=TUE;byhour=22;byminute=0; bysecond=0
+000 04:00:00
WEDNESDAY_WINDOW freq=daily;byday=WED;byhour=22;byminute=0; bysecond=0
+000 04:00:00
THURSDAY_WINDOW freq=daily;byday=THU;byhour=22;byminute=0; bysecond=0
+000 04:00:00
FRIDAY_WINDOW freq=daily;byday=FRI;byhour=22;byminute=0; bysecond=0
+000 04:00:00
SATURDAY_WINDOW freq=daily;byday=SAT;byhour=6;byminute=0; bysecond=0
+000 20:00:00
SUNDAY_WINDOW freq=daily;byday=SUN;byhour=6;byminute=0; bysecond=0
+000 20:00:00
WEEKNIGHT_WINDOW freq=daily;byday=MON,TUE,WED,THU,FRI;byhour=22;byminute=0; bysecond=0
+000 08:00:00
WEEKEND_WINDOW freq=daily;byday=SAT;byhour=0;byminute=0;bysecond=0
+002 00:00:00
9 rows selected.
윈도가 열릴 때 지속 시간은 11g에서 변경되었다. 월요일 - 금요일은 오후 10시에서 오전 2시까지이며 토요일 - 일요일은 오전 6시에서 오전 2시까지다.
'WEEKNIGHT_WINDOW',
'repeat_interval',
'freq=daily;byday=MON, TUE, WED, THU, FRI;byhour=8;byminute=0;bysecond=0');
각각의 평일 윈도는 DEFAULT_MAINTENANCE_PLAN이라는 사전에 정의된 리소스 계획을 가지고 있으며 관련 윈도가 열릴 때 활성화 될 것이다. 이것은 10g와 11g 간의 또 다른 차이점이다.
WINDOW_NAME RESOURCE_PLAN
------------------------------ ------------------------------
MONDAY_WINDOW DEFAULT_MAINTENANCE_PLAN
TUESDAY_WINDOW DEFAULT_MAINTENANCE_PLAN
WEDNESDAY_WINDOW DEFAULT_MAINTENANCE_PLAN
THURSDAY_WINDOW DEFAULT_MAINTENANCE_PLAN
FRIDAY_WINDOW DEFAULT_MAINTENANCE_PLAN
SATURDAY_WINDOW DEFAULT_MAINTENANCE_PLAN
SUNDAY_WINDOW DEFAULT_MAINTENANCE_PLAN
WEEKNIGHT_WINDOW
WEEKEND_WINDOW
9 rows selected.
PLAN_ID PLAN NUM_PLAN_DIRECTIVES
---------- ------------------------------ -------------------
CPU_METHOD MGMT_METHOD
------------------------------ ------------------------------
ACTIVE_SESS_POOL_MTH PARALLEL_DEGREE_LIMIT_MTH
------------------------------ ------------------------------
QUEUEING_MTH SUB
------------------------------ ---
COMMENTS
--------------------------------------------------------------------------------
STATUS MAN
------------------------------ ---
11187 DEFAULT_MAINTENANCE_PLAN 4
EMPHASIS EMPHASIS
ACTIVE_SESS_POOL_ABSOLUTE PARALLEL_DEGREE_LIMIT_ABSOLUTE
FIFO_TIMEOUT NO
Default plan for maintenance windows that prioritizes SYS_GROUP operations and a
llocates the remaining 5% to diagnostic operations and 25% to automated maintena
nce operations.
YES
PLAN GROUP_OR_SUBPLAN TYPE
------------------------------ ------------------------------ --------------
CPU_P1 CPU_P2 CPU_P3 CPU_P4 CPU_P5 CPU_P6 CPU_P7
---------- ---------- ---------- ---------- ---------- ---------- ----------
CPU_P8 MGMT_P1 MGMT_P2 MGMT_P3 MGMT_P4 MGMT_P5 MGMT_P6
---------- ---------- ---------- ---------- ---------- ---------- ----------
MGMT_P7 MGMT_P8 ACTIVE_SESS_POOL_P1 QUEUEING_P1 PARALLEL_DEGREE_LIMIT_P1
---------- ---------- ------------------- ----------- ------------------------
SWITCH_GROUP SWITC SWITCH_TIME SWITCH_IO_MEGABYTES
------------------------------ ----- ----------- -------------------
SWITCH_IO_REQS SWITC MAX_EST_EXEC_TIME UNDO_POOL MAX_IDLE_TIME
-------------- ----- ----------------- ---------- -------------
MAX_IDLE_BLOCKER_TIME SWITCH_TIME_IN_CALL
--------------------- -------------------
COMMENTS
--------------------------------------------------------------------------------
STATUS MAN
------------------------------ ---
DEFAULT_MAINTENANCE_PLAN SYS_GROUP CONSUMER_GROUP
100 0 0 0 0 0 0
0 100 0 0 0 0 0
0 0
FALSE
FALSE
Directive for system operations
NO
DEFAULT_MAINTENANCE_PLAN OTHER_GROUPS CONSUMER_GROUP
0 70 0 0 0 0 0
0 0 70 0 0 0 0
0 0
FALSE
FALSE
Directive for all other operations
NO
DEFAULT_MAINTENANCE_PLAN ORA$AUTOTASK_SUB_PLAN PLAN
0 25 0 0 0 0 0
0 0 25 0 0 0 0
0 0
FALSE
FALSE
Directive for automated maintenance tasks
NO
DEFAULT_MAINTENANCE_PLAN ORA$DIAGNOSTICS CONSUMER_GROUP
0 5 0 0 0 0 0
0 0 5 0 0 0 0
0 0
FALSE
FALSE
Directive for automated diagnostic tasks
NO
* 11.2.0.3 에서는 SYS_GROUP 의 CPU_P1, MGMT_P1이 75로 변경 됨
10g와 11g의 변경사항 요약 :
제목 | 10g | 11g |
---|---|---|
작업 | DBA_SCHEDULER_JOBS에서 별도의 작업 | AUTOTASKS는 접두사 'ORA$AT'라는 이름을 가지며 실행되었을 때 작업처럼 볼 수 있다. |
유지 관리 윈도 | 2개의 윈도, 평일 밤과 주말 | 매일 자신의 윈도를 가진다. |
자원 관리자(Resource manager) | 기본으로 설정되지 않음 | 모든 평일 윈도를 위한 사전 정의된 자원 계획 |
관련된 뷰:
DBA_AUTOTASK_CLIENT
DBA_AUTOTASK_CLIENT_HISTORY
DBA_AUTOTASK_CLIENT_JOB
DBA_AUTOTASK_JOB_HISTORY
DBA_AUTOTASK_OPERATION
DBA_AUTOTASK_SCHEDULE
DBA_AUTOTASK_TASK
DBA_AUTOTASK_WINDOW_CLIENTS
DBA_AUTOTASK_WINDOW_HISTORY
'OraclE' 카테고리의 다른 글
rman 백업 확인 (0) | 2014.03.27 |
---|---|
[펌] DBMS_XPLAN.DISPLAY_CURSOR (0) | 2014.03.24 |
Temporary Tablespace Group(10g) (0) | 2013.11.20 |
db link 사용시 lob타입 테이블 문제 (0) | 2012.08.03 |
append 힌트의 효용성 (0) | 2012.06.26 |