메뉴 여닫기
개인 메뉴 토글
로그인하지 않음
만약 지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

오라클 INVISIBLE INDEX

DB CAFE

인비저블 인덱스 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;