메뉴 건너뛰기

bysql.net

2. AutoTrace

2010.06.06 11:36

실천하자 조회 수:8597

AutoTrace

SQL 튜닝에 필요한 유용한 정보들이 많이 포함

  ☞ 튜닝 시 즐겨 사용되는 도구

  • AutoTrace 수행 결과 구성

SQL> set autotrace on;
SQL> select * from emp;


  ▼ 쿼리수행결과

    EMPNO ENAME      JOB              MGR HIREDATE        SAL       COMM     DEPTNO
--------- ---------- --------- ---------- -------- ---------- ---------- ----------
     7369 SMITH      CLERK           7902 80/12/17       1800                    20
     7499 ALLEN      SALESMAN        7698 81/02/20       1600        300         30
     7521 WARD       SALESMAN        7698 81/02/22       1250        500         30
     7566 JONES      MANAGER         7839 81/04/02       2975                    20
     7654 MARTIN     SALESMAN        7698 81/09/28       1250       1400         30
     7698 BLAKE      MANAGER         7839 81/05/01       2850                    30
     7782 CLARK      MANAGER         7839 81/06/09       2450                    10
     7788 SCOTT      ANALYST         7566 87/04/19       1000                    20
     7839 KING       PRESIDENT            81/11/17       5000                    10
     7844 TURNER     SALESMAN        7698 81/09/08       1500          0         30
     7876 ADAMS      CLERK           7788 87/05/23       1100                    20
     7900 JAMES      CLERK           7698 81/12/03        950                    30
     9988 FORD       ANALYST         7566 81/12/03       3000                    20
     7934 MILLER     CLERK           7782 82/01/23       1300                    10


  ▼ 실행계획


Excution Plan
---------------------------------------------------------
Plan hash value: 3956160932
---------------------------------------------------------------------------

|  Id  | Operation         | Name | Rows  | Bytes | Cost (%CPU)| Time     |
---------------------------------------------------------------------------
|    0 | SELECT STATEMENT  |      |    14 |   518 |     2   (0)| 00:00:01 |
|    1 |  TABLE ACCESS FULL| EMP  |    14 |   518 |     2   (0)| 00:00:01 |
---------------------------------------------------------------------------


  ▼ 실행통계

Statistics
---------------------------------------------------------
         0  recursive calls
         0  db block gets
         8  consistent gets
         0  physical reads
         0  redo size
      1428  bytes sent via SQL*Net to client
       385  bytes received via SQL*Net from client
         2  SQL*Net roundtrips to/from client
         0  sorts (memory)
         0  sorts (disk)
        14  rows processed




  • 옵션

 옵     션

 설     명

 set autotrace on

  • SQL 실제 수행 및 결과 출력
  • 실행 계획 및 실행 통계 출력 

 set autotrace on explain

  • SQL 실제 수행 및 결과 출력
  • 실행 계획 출력 

 set autotrace on statistics

  • SQL 실제 수행 및 결과 출력
  • 실행 통계 출력 

 set autotrace traceonly

  • SQL 실제 수행
  • 실행 계획 및 실행 통계 출력 

 set autotrace traceonly explain

  • SQL 실제 수행 없음
  • 실행 계획만 출력 

 set autotrace traceonly statistics

  •  SQL 실제 수행
  • 실행통계만 출력 
  • 1~3번째 항목은 수행결과 출력 때문에 쿼리를 실제 수행
  • 4, 6번째 항목은 실행통계 출력 때문에 쿼리를 실제 수행
  • 5번째 항목은 실행계획만 출력하면 되어 쿼리 수행 X
  • 실행통계 확인 시 필요한 뷰
    • v_$sesstat
    • v_$statname
    • v_$mystat