인비저블 인덱스 INVISIBLE INDEX
틀:고지 상자
인비저블 인덱스 조회
select VISIBILITY
from dba_indexes
where index_name='IX_DBCAFE_01'
and owner='DBCAFE';
-- INVISIBLE 로 변경시
ALTER INDEX DBCAFE.IX_DBCAFE_01 INVISIBLE;
인비저블 인덱스 생성
- Index를 Invisible Index로 생성
- Invisible Index는 옵티마이져가 PLAN을 결정할때 관여하지 않는 인덱스임
- (주의) 인덱스가 REBUILD 되면 VISIBLE INDEX로 변경된다.
CREATE INDEX EMP.IDX_TEST ON EMP.TB_TEST(COL1,COL2,COL3)
PCTFREE 10
INITRANS 5
PARALLEL 8 NOLOGGING
TABLESPACE TS_IDX
INVISABLE -- 인비저블 인덱스
ONLINE -- DML 발생시에도 테이블에 LOCK이 발생되지 않음.
;
VISIBLE 인덱스로 변경
ALTER INDEX EMP.IX_TEST VISIBLE;
인비저블 인덱스 사용시 검토사항
- 테이블에 대한 Acess Path 분석을 통한 영향도 및 타당성 검토를 수행한다.
- index를 만들었을때 DML에 의한 성능저하 요인은?
- index에 의한 효과 대상 SQL은?
- 효과의 영향도는?
- 다음을 SESSION LEVEL로 적용 후 관련 SQL에 대한 모든 PLAN점검을 실행한다.
ALTER SESSION SET optimizer_use_invisible_indexes=TRUE;