INDEX 사용현황 확인 하는 방법

 

오라클에서 필요에 의해서 인덱스를 만들어 놓고 이후에 이 인덱스를 사용하는지 안하는지 알 수가 없어서 필요없는 인덱스에 의해서 사용되어지는 디스크 공간을 회수 하지 못하고 있는 경우가 많이 있다.

이 경우 인덱스 사용여부를 확인해서 사용하지 않는 인덱스의 경우 drop 하여 불필요한 디스크 공간을 줄여주는게 좋다.

Oracle 9i 부터 제공되는 Monitoring 기능에 대해서 간단하게 설명하고자 한다.

모니터링 하고자 하는 인덱스가 test_pk 라면

모니터링을 시작하기 위해서는

모니터링을 중단하기 위해서는

그리고 모니터링 결과를 확인하기 위해서는 아내롸 같이 확인

하지만 v$object_usage 로 데이터가 없을 경우 sys.object_usage 를 조회하면 된다.

여기서 decode(bitand(u.flags, 1), 0, ‘NO’, ‘YES’) 부분이 YES 이면 인덱스가 사용되는것이고 NO 상태로 계속 유지된다면 사용하지 않는 인덱스라고 보면 된다.

그리고 인덱스 모니터링 기간은 테이블에 따라서 조금 다르겠지만 일주일 정도 두고 보는게 좋다.

 

This entry was posted in Database and tagged , , , . Bookmark the permalink.

댓글 남기기