[ORACLE] DDL 모니터링과 관련된 쿼리들

뱌암·2024년 7월 15일

DB

목록 보기
4/4

DDL 작업 이력 조회
목적: 데이터베이스 객체에 대한 ALTER, DROP, CREATE 등의 DDL 작업 이력을 확인

SELECT ACTION_NAME, SQL_TEXT, TIMESTAMP
FROM DBA_AUDIT_TRAIL
WHERE ACTION_NAME IN ('ALTER TABLE', 'DROP TABLE', 'CREATE TABLE')
ORDER BY TIMESTAMP DESC;

DBA_AUDIT_TRAIL에서 ALTER TABLE, DROP TABLE, CREATE TABLE과 관련된 작업들을 시간 역순으로 조회

최근 생성된 테이블 목록 조회
목적: 최근에 생성된 테이블 정보를 조회

SELECT OWNER
     , OBJECT_NAME
     , SUBOBJECT_NAME
     , OBJECT_TYPE
     , CREATED
     , LAST_DDL_TIME
     , TIMESTAMP
     , STATUS
     , TEMPORARY
FROM ALL_OBJECTS 
WHERE OWNER IN ('OWNER_NAME')
	--AND OBJECT_TYPE = 'TABLE'
ORDER BY CREATED DESC;

ALL_OBJECTS에서 특정 소유자(OWNER_NAME)의 객체 중에서 테이블들을 생성일자(CREATED)를 기준으로 내림차순으로 조회

컬럼 추가 이력 조회
목적: 특정 테이블에 추가된 컬럼들의 정보를 조회

SELECT TABLE_NAME, COLUMN_NAME, COLUMN_ID
FROM ALL_TAB_COLUMNS
WHERE TABLE_NAME = 'TABLE_NAME'
ORDER BY COLUMN_ID;

ALL_TAB_COLUMNS에서 특정 테이블(TABLE_NAME)의 컬럼 이름과 ID를 조회

최근 생성된 인덱스 목록 조회
목적: 최근에 생성된 인덱스 정보를 조회

SELECT OWNER
     , OBJECT_NAME
     , SUBOBJECT_NAME
     , OBJECT_TYPE
     , CREATED
     , LAST_DDL_TIME
     , TIMESTAMP
     , STATUS
     , TEMPORARY
FROM ALL_OBJECTS 
WHERE OWNER IN ('OWNER_NAME')
	AND OBJECT_TYPE = 'INDEX'
	AND OBJECT_NAME NOT LIKE 'SYS%'
ORDER BY CREATED DESC;

ALL_OBJECTS에서 특정 소유자(OWNER_NAME)의 INDEX 타입 객체 중에서 시스템 객체가 아닌 것을 생성일자(CREATED)를 기준으로 내림차순으로 조회

최근 생성된 인덱스 생성 쿼리 조회
목적: 최근에 생성된 인덱스들의 생성 쿼리를 조회

SELECT 'CREATE INDEX ' || AI.INDEX_NAME || ' ON ' || AI.TABLE_NAME || ' (' || LISTAGG(AIC.COLUMN_NAME, ', ') WITHIN GROUP (ORDER BY AIC.COLUMN_POSITION) || ') ' || 'TABLESPACE TABLESPACE_NAME;' AS CI
FROM ALL_INDEXES AI
JOIN ALL_IND_COLUMNS AIC ON AI.INDEX_NAME = AIC.INDEX_NAME AND AI.TABLE_NAME = AIC.TABLE_NAME AND AI.OWNER = AIC.INDEX_OWNER
JOIN DBA_OBJECTS do ON AI.INDEX_NAME = do.OBJECT_NAME AND do.OWNER = AI.OWNER
WHERE AI.OWNER IN ('OWNER_NAME')
  AND AI.INDEX_NAME NOT LIKE '%SYS%'
GROUP BY AI.INDEX_NAME, AI.TABLE_NAME, AI.OWNER, do.CREATED
ORDER BY do.CREATED DESC;

ALL_INDEXES와 ALL_IND_COLUMNS을 조인하여 최근에 생성된 인덱스들의 생성 쿼리를 작성함

1개의 댓글

comment-user-thumbnail
2024년 7월 15일

도움 받았습니다,,,

답글 달기