トップページ >  Oracle SQL >  TKPROF
初版2007/03/29: 最終更新日2007/08/06
  TKPROF
目次
TKPROF
トレースファイルの出力先
TKPROF
OracleにはSQLチューニングをするため(整形)にtkprofというユーティリティがあります。
実行ファイルは$Oracle_HOME/bin配下に存在します。
tkprofは整形するコマンドで、実際にはSQLのトレースファイルを取得してから、tkprofでファイルを整形します。
SQLトレースを取得するには以下の手順を実行します。(現行セッションでのトレース取得)

sqlplus user/pass@DB識別子
set linesize 2000
set term off
ALTER SESSION SET TIMED_STATISTICS=TRUE;
ALTER SESSION SET SQL_TRACE=TRUE;
@sql
ALTER SESSION SET SQL_TRACE=FALSE;
exit

linesizeを2000にしているのは実行sqlの出力スピードを速めるためにしているだけです。
コマンドファイルから実行する場合は、表示抑制のためにset term offとするのが良いです。
この後、トレースファイルがタイムスタンプ付きで作成されますので、その場所(後述)にカレントディレクトリを移動し、

tkprof ~.trc a.txt explain=ユーザ/パスワード aggregate=no sys=no sort=fchela

というように実行すると、整形されたa.txtというファイルが作成されます。

termについては こちら を御覧下さい。
linesizeについては こちら を御覧下さい。

トレースファイルの出力先
トレースファイルの出力先は初期化パラメータによって設定します。
また、専用サーバ接続と共有サーバ接続によって出力先が異なります。
専用サーバ接続の場合、 user_dump_dest で指定した出力先に出力されます。
共有サーバ接続の場合、 background_dump_dest で指定した出力先に出力されます。