DBMS_XPLAN 란?
오라클 9? 버전부터 제공되는 패키지라고 한다. Plan_Table에 저장된 실행계획들을 좀 더 편하게 볼 수 있는 자체 라이브러리? 같은 거라고 생각하면 될 것 같다.
사용법
여러가지 방법이 있으나 다 요새는 대부분 10 이상 버전을 쓰기 때문에 기본적으로 Plan_Table과 Synonym이 생성되어 있다. 아래와 같은 방법을 사용하면 편하게 실행해 볼 수 있다.
- 힌트 /*+ gather_plan_statistics */ 구문 추가
통계를 보고자 하는 쿼리에 /*+ gather_plan_statistics */ 를 추가한다.select /*+ gather_plan_statistics */ * from 테이블
- 세션 ALTER
ALTER SESSION SET "_rowsource_execution_statistics" = true; ALTER SESSION SET statistics_level = all;
- 쿼리 수행 직후 실행계획 출력
ALLSTATS LAST에서 LAST를 적어주지 않으면 해당 쿼리의 누적된 정보를 보여주게 된다. 그러니 일반적으로는 붙여주고 쿼리를 실행하여 해당 쿼리의 1회성 통계정보를 정확하게 수집하자.그리고 NULL, NULL의 의미는 각각 SQL_ID, CHILD_NO인데 두개 다 NULL을 넣으면 직전에 수행된 쿼리가 대상이 된다.SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY(NULL, NULL, 'ALLSTATS LAST'));
'Language > SQL 튜닝' 카테고리의 다른 글
2장. [옵티마이저] 2-2. SQL 처리 과정 (0) | 2021.10.09 |
---|---|
2장. [옵티마이저] 2-1. 옵티마이저란? (0) | 2021.10.08 |
1장. [SQL 분석 도구] 1-4. V$SQL (0) | 2021.10.06 |
1장. [SQL 분석 도구] 1-3. 트레이스 수집 (0) | 2021.10.05 |
1장. [SQL 분석 도구] 1-2. AutoTrace (0) | 2021.10.04 |