DataBase/Oracle2009.10.08 11:09
SQL> ALTER SESSION SET optimizer_mode=ALL_ROWS;
SQL> ALTER SESSION SET sql_trace=FALSE;
SQL> ALTER SESSION SET EVENTS '10053 trace name context forever, level {1/2}';
SQL> 분석 대상 SQL문
SQL> ALTER SESSION SET EVENTS '10053 trace name context off';


SQL> SHOW PARAMETER USER_DUMP_DEST

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
user_dump_dest                       string      D:\ORACLE\PRODUCT\10.2.0\ADMIN
                                                 \ORCL\UDUMP

SQL> EXEC DBMS_APPLICATION_INFO.SET_CLIENT_INFO('trace_analyze');
SQL> SELECT  'ORCL_ORA_'||b.spid||'.trc' "Trace Files"
  2  FROM V$SESSION a, V$PROCESS b
  3  WHERE a.PADDR = b.ADDR and a.CLIENT_INFO = 'trace_analyze';

위의 user_dump_dest에 해당하는 경로에서 최근의 trace file을 편집기로 열어서, 'GENERAL PLANS'라는 문자열을 검색한다.
Join order 항목에서 조인 순서를 확인

SQL> EXEC SYS.DBMS_SYSTEM.SET_EV (<SID>, <SERIAL#>, 10053, {1/2},")
SQL> EXEC SYS.DBMS_SYSTEM.SET_EV (<SID>, <SERIAL#>, 10053, 0,")
신고
저작자 표시 비영리 동일 조건 변경 허락
Posted by the Creater, Shon
TAG , ,