본문 바로가기

카테고리 없음

실행계획 수집하기



 실행계획을 수집하자.

옵티마이저는 사용자가 요청한 SQL을 가장 효율적이고 빠르게 수행할 수 있는 최적(최저비용)의 처리경로를 생성하고,

이 처리경로(프로시져)를 실행계획이라고 한다.


같은 SQL이라도 당시 옵티마이저의 판단에 따라 서로다른 실행계획을 가질 수 있으며, 

쿼리의 성능은 이 실행계획에 좌우된다고 할 수 있다.


실행계획을 수집하여 자세히 분석하면

옵티마이저가 어느 부분에서 착각하여 비효율을 발생시켰는지 알아낼 수 있고,

이를 바탕으로 성능개선을 위한 방법을 생각할 수 있다. 



 Execution Plan 활성화하기

실행계획을 수집하기 위해서는 실행계획이 저장될 테이블이 필요하다.


오라클은 이러한 테이블을 생성하는 스크립트를 이미 준비해 놓았으며,

DB가 설치된 폴더에서 utlxplan.sql를 검색하면 쉽게 찾을 수 있다.


SYSDBA 유저로 로그인한 후 utlxplan.sql의 스크립트를 실행하면

실행계획을 수집하기 위한 모든 준비는 끝났다.



 Auto Trace 유틸리티로 실행계획 확인하기

 


 [STEP 01] 실행계획을 확인할 쿼리문 맨 앞에, set autotrace on; 명령어를 삽입한다.


 


 [STEP 02] 쿼리를 실행하면 실행계획이 출력된다.



 explain for 명령어로 실행계획 확인하기