개요
SQL Trace 기능을 활성화 하면 Session마다 하나의 파일(확장자명 trc)에 SQL 수행 정보를 기록합니다.
하지만 Parallel이 사용된 SQL은 여러 개의 파일에 분산되어 정보가 저장됩니다.
여러 파일을 각각 변환하면 부정확한 정보가 남게 되므로, 파일들을 Merge하여 하나의 결과 파일을 생성하는 옵션을 소개합니다.
방법
SQL 수행 및 Trace 파일 생성 예시
ALTER SESSION SET SQL_TRACE=Y or ALTER SESSION SET SQL_TRACE=Y;
~~PARALLEL SQL 수행
ALTER SESSION SET SQL_TRACE=Y or ALTER SESSION SET SQL_TRACE=N;
SQL
복사
반환 명령어 예시
tbprof 디렉터리명 생성파일명 dir=y
SQL
복사
참고
tbprof 옵션의 dir=yes 사용합니다.
1. parallel 쿼리 수행 후 아래와 같이 여러 개의 .trc 파일 생성
-rw-r--r--. 1 tibero tibero 1799 Apr 29 08:37 tb_sqltrc_934101_88_977946.trc
-rw-r--r--. 1 tibero tibero 1441 Apr 29 08:37 tb_sqltrc_934103_108_980302.trc
-rw-r--r--. 1 tibero tibero 1442 Apr 29 08:37 tb_sqltrc_934103_109_980301.trc
-rw-r--r--. 1 tibero tibero 1438 Apr 29 08:37 tb_sqltrc_934103_110_980299.trc
-rw-r--r--. 1 tibero tibero 1438 Apr 29 08:37 tb_sqltrc_934103_111_980304.trc
-rw-r--r--. 1 tibero tibero 1332 Apr 29 08:37 tb_sqltrc_934103_112_980305.trc
-rw-r--r--. 1 tibero tibero 1333 Apr 29 08:37 tb_sqltrc_934103_113_980303.trc
-rw-r--r--. 1 tibero tibero 1335 Apr 29 08:37 tb_sqltrc_934103_114_980300.trc
-rw-r--r--. 1 tibero tibero 1332 Apr 29 08:37 tb_sqltrc_934103_115_980306.trc
SQL
복사
참고
SQL Trace의 .trc 파일 기본 경로 및 설정 파라미터 확인 방법
•
defualt : $TB_HOME/instance/$TB_SID/log/sqltrace/
•
tip 파일에 명시 : SQL_TRACE_DEST 파라미터 확인합니다.
•
tbsql 을 통한 확인합니다.
SQL> show param SQL_TRACE_DEST
SQL
복사
2. .trc 파일 이동 및 명령어 수행
parallel SQL 수행 후 발생한 .trc 파일들을 디렉터리에 옮긴 뒤, 아래의 명령어 수행합니다.
$ tbprof tracedir test.out dir=yes (tbprof 디렉터리명 생성파일명 dir=y)
[tibero@ENT-ROCKY8 sqltrace]$ tbprof tracedir test.out dir=yes
TBPROF 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
SQL
복사
참고
•
이미 SQL Trace를 사용한 상태라면, Trace 덤프 파일이 저장되는 경로에 다른 쿼리의 .trc파일이 함께 존재할 수 있습니다. 이 경우, 분석 대상 쿼리와 무관한 .trc파일이 혼재되어 있을 수 있으므로 주의가 필요합니다.
•
따라서 parallel 수행 쿼리의 .trc 파일들을 따로 디렉터리를 만들어 사용해야 합니다.