Oracle ILM 관련 정책 상태 및 작업 상태 등을 체크해 볼 수 있는 스크립트를 모아봤습니다.
ILM 관련 개념에 대한 설명은 아래 링크를 참조하시기 바랍니다.
ILM은 Information Lifecycle Management 의 약자입니다. 정보 즉 DB내의 데이터를 Lifecycle 에 따라 관리하겠다는 것입니다. 이 용어는 Oracle만 사용하는 용어는 아니고, General 한 용어입니다. 이 기능을 구현하기 위해서 오라클에서는 Oracle 12c 에서 Heatmap, ADO 라는 기능을 만들었습니다.
Oracle 에서는 ILM, ADO 를 거의 같은 의미로 여기저기 사용하고 있습니다.
* ILM 관련 파라메타 조회
-- ILM 관련 파라메타의 조회 (sys 유저에서 조회)
SQL>
col name for a30
select * from dba_ilmparameters;
NAME VALUE
------------------------------ ----------
ENABLED 1
RETENTION TIME 30
JOB LIMIT 2
EXECUTION MODE 2
EXECUTION INTERVAL 15
TBS PERCENT USED 85
TBS PERCENT FREE 25
POLICY TIME 0
위에서 TBS PERCENT USED, TBS_PERCENT FREE 파라메타는 Storage Tiering (Move Tablespace) 에 영향을 미치는 파라메타입니다.
위 정보는 dba 유저 sys 에서 조회해야 합니다. 아래는 해당 ILM 정책을 적용하는 DB유저에서 조회하면 됩니다.
일반적으로 dba_ 로 시작하는 딕셔너리뷰는 sys 유저에서 조회하고, user_ 로 시작되는 딕셔너리뷰는 해당 유저에서 직접 조회합니다.
* ILM ADO Policy 정보 조회
-- ILM Action 타입(압축인지, Move인지), Scope, 압축레벨, Trigger 일수 조회
SQL>
set linesize 200
col policy_name for a20
col compression_level for a20
SELECT policy_name, action_type, scope, compression_level, condition_type, condition_days
FROM user_ilmDatamovementPolicies
ORDER BY policy_name;
POLICY_N ACTION_TYPE SCOPE COMPRESSION_LEVEL CONDITION_TYPE CONDITION_DAYS
-------- ----------- ------- ----------------- ---------------------- --------------
P166 STORAGE SEGMENT 0
P186 COMPRESSION SEGMENT ADVANCED LAST MODIFICATION TIME 4
* Policy 적용된 Object 명 및 Enable 여부 조회
-- ILM Object 명, Policy Enable 여부 조회
SQL>
set linesize 200
col policy_name for a20
col object_name for a20
select policy_name, object_name, enabled
from user_ilmObjects;
POLICY_NAME OBJECT_NAME ENA
-------------------- -------------------- ---
P166 EMPLOYEE2 NO
P186 EMPLOYEE YES
* Policy 타입 및 Enable, Delete 여부 조회
-- ILM Policy명, Policy 타입, Enable 여부 조회
SQL>
col enabled for a10
col deleted for a10
select *
from user_ilmPolicies;
POLICY_NAME POLICY_TYPE TABLESPACE ENABLED DELETED
-------------------- ------------- ------------------------------ ---------- ----------
P166 DATA MOVEMENT NO NO
P186 DATA MOVEMENT YES NO
* ILM Task 작업 정보 조회
-- ILM Task 작업 정보를 조회
SQL>
set linesize 200
col job_name for a20
col creation_time for a35
col start_time for a35
col completion_time for a35
SELECT *
FROM user_ilmTasks
order by 1;
TASK_ID STATE CREATION_TIME START_TIME COMPLETION_TIME
---------- --------- ----------------------------------- ----------------------------------- -----------------------------------
272 COMPLETED 09-JUL-19 12.20.13.302986 PM 09-JUL-19 12.20.13.302986 PM 09-JUL-19 12.20.14.055460 PM
273 COMPLETED 09-JUL-19 12.25.13.320140 PM 09-JUL-19 12.25.13.320140 PM 09-JUL-19 12.25.13.459580 PM
275 COMPLETED 09-JUL-19 12.44.42.566744 PM 09-JUL-19 12.44.42.566744 PM 09-JUL-19 12.44.42.854153 PM
280 COMPLETED 09-JUL-19 01.45.23.484808 PM 09-JUL-19 01.45.23.484808 PM 09-JUL-19 01.45.24.267265 PM
* ILM 작업 결과 정보 조회
-- ILM 작업의 결과정보 조회
SQL>
SELECT task_id, job_name, job_state, completion_time completion
FROM user_ilmResults
ORDER BY 1 ;
TASK_ID JOB_NAME JOB_STATE COMPLETION
---------- -------------------- ----------------------------------- -----------------------------------
272 ILMJOB5978 COMPLETED SUCCESSFULLY 09-JUL-19 12.20.14.055460 PM
273 ILMJOB5984 COMPLETED SUCCESSFULLY 09-JUL-19 12.25.13.459580 PM
275 ILMJOB5994 COMPLETED SUCCESSFULLY 09-JUL-19 12.44.42.854153 PM
280 ILMJOB6022 COMPLETED SUCCESSFULLY 09-JUL-19 01.45.24.267265 PM
* ILM ADO Policy 평가관련 상세정보 조회
-- ADO 정책의 평가와 관련된 상세정보를 조회
SQL>
SELECT task_id, policy_name, object_name, selected_for_execution, job_name
FROM user_ilmEvaluationDetails
ORDER BY 1;
TASK_ID POLICY_NAME OBJECT_NAME SELECTED_FOR_EXECUTION JOB_NAME
---------- -------------------- -------------------- ------------------------------------------ --------------------
280 P166 EMPLOYEE2 SELECTED FOR EXECUTION ILMJOB6022
/*
++ selected_for_execution 컬럼에 나오는 데이터
PRECONDITION NOT SATISFIED : 아직 ILM Trigger 가 작동 안된 경우
SELECTED FOR EXECUTION : ILM Policy가 실행을 위해 selected 되었음을 의미.
POLICY DISABLED : 정책이 이미 적용되었는데, 수동으로 재실행하는 경우에도 disabled 로 나옴.
POLICY OVERRULED
INHERITED POLICY OVERRULED
JOB ALREADY EXISTS
NO OPERATION SINCE LAST ILM ACTION
TARGET COMPRESSION NOT HIGHER THAN CURRENT
STATISTICS NOT AVAILABLE
*/
'IT관련' 카테고리의 다른 글
오라클 헬스체크(Oracle Healthcheck) 툴 ORAchk (0) | 2019.07.14 |
---|---|
오라클 Alertlog 를 DB내에서 SQL Query로 조회하는 방법 (0) | 2019.07.14 |
오라클 Heatmap, ADO, ILM 기능 테스트 핸즈온 - Storage Tiering (0) | 2019.07.09 |
오라클 Heatmap, ADO, ILM 기능 테스트 핸즈온 - Compression Tiering (0) | 2019.07.08 |
오라클 Heatmap, ADO, ILM 기능 샘플 커맨드 예제 (0) | 2019.07.06 |