optimizer가 SQL 파싱동안 선택하는 실행계획에 대한 trace
1. 기존방식
alter session set max_dump_file_size=unlimited;
alter session set tracefile_identifier='10053_trace_test';
alter session set events ‘10053 trace name context forever, level 1’;
select sysdate from dual;
alter session set events ‘10053 trace name context off’;
trace 디렉토리에서 ~10053_trace_test~ 파일 찾아서 확인
2. diag 함수사용
v$sql 영역에서 사용된 SQL를 찾아 해당 쿼리에 대한 10053 sql trace
column sql_text format a30
select sql_id from v$sql where sql_text like 'select sysdate from dual%';
execute dbms_sqldiag.dump_trace(p_sql_id=>'7h35uxf5uhmm1', p_child_number=>0,p_component=>'Compiler',p_file_id=>'DIAG');
3. 기타
alter session set events 'trace[rdbms.SQL_Optimizer.*][sql:9rjmrhbjuasav]';
select * from dual;
alter session set events 'trace[rdbms.SQL_Optimizer.*]off';
'RDB > Oracle' 카테고리의 다른 글
oracle sql monitor report (0) | 2019.10.01 |
---|---|
oracle sql hint 수정 (0) | 2019.09.30 |
oracle 18c table 통계 정보 pending (0) | 2019.09.25 |
oracle 18c sequence restart (0) | 2019.09.25 |
oracle 18c object 통계 정보 수집 (0) | 2019.09.25 |