행위

TKPROF

DB CAFE

thumb_up 추천메뉴 바로가기


1 TKPROF[편집]

  • 사용법
tkprof trace_file output_file [explain=] [table=] [print=] [insert=] [sys=] [sort=]
옵션 설명
table = schema.tablename 'explain=' 옵션과 함께 사용.
  • explain plan이 사용할 테이블 지정 , 잘사용하지 않음.
  • 이 옵션을 하지 않아도 자동으로 prof$plan_table 생성하고 제거되기 때문 .
  • create table 권한이 없을 경우에만 생성.
explain= user/password explain plan 구문을 실행하여 처리됨.
  • DB 접속이 필요하므로 계정/비밀번호가 필요함. 그러나 잘사용하지 않음.
print = 숫자 출력파일에 포함 되는 sql 구문의 수를 제한, 기본값은 무제한
  • print=10 이면 top sql 10개만 포함.
aggregate = no 기본값 yes , 동일한 텍스트를 가진 sql 구문을 어떻게 처리 할지 결정.
insert = file_name 인서트 구문 목록과 데이터를 파일로 기록
record = file_name 트레이스파일에 있는 비순환절 기록, 바인드 변수를 처리 할수 없으므로 이기능은 사용하지 못함.
waits = yes 트레이스파일에 있는 모든 대기 이벤트 기록 함. 기본값은 no ,
  • waits = yes를 추천함.
sort = option 출력파일에 sql구문을 어떤 순서로 기록할지 결정.
  • sort 옵션에 따라서 0 이나 0 이상 설정. 정렬옵션은 호출횟수,cpu 시간,물리적읽기 횟수,경과시간 으로 정렬 가능.
    • sort = prsela,exeela,fchela <== 추천 옵션
      preela 는 커서를 파싱하는데 소요한 시간
      exeela 는 커서를 실행하는데 소요한 시간
      fchela 는 서커로 부터 데이터를 패치하는데 소요한 시간
    • 성능 문제 에서 가장 유용한 정렬옵션은 응답시간
    • 트레이스 파일에 여러 세션의 정보가 포함되어 있고 aggregate = no 인경우 sql 구문은 각각의 세션과 무관되게 정렬됨.
sys = no sys 유저에 의해 실행되는 SQL문(주로 오라클 시스템 관련)은 제외함.
  • 많이 사용되는 tkprof 옵션
tkprof trace파일 output파일 sys=no sort=prsela,exeela,fchela


1.1 tkprof 출력 해석[편집]