質問 |
||
| QNo.3419408 | アプリケーションからのSQLトレース出力について | |
|---|---|---|
| 質問者:tosshi_1978 |
java(servlet)で作成したアプリケーションのSQLトレースを取得したいのですが、トレースファイルに出力されません。 ご教授お願いします。 【環境】 ・oracle 9i(10gでも確認しましたが同様の結果でした) ・java(servlet)の実行環境はwindows server 2003 【設定、操作方法】 ●SQLPLUSより 1.ALTER SESSION SET sql_trace = true; 2.timed_statistics は true になっている事を確認 ●ブラウザより 3.アプリケーションを動かす(内部でSQLが発行される操作を行う) ●コマンドプロンプトより 4.tkprof より出力内容を確認 出力結果にアプリケーションで発行しているSQLの解析情報が全く入っていません。 上記の操作に問題があるのでしょうか?それとも何か他に設定が必要なのでしょうか? よろしくお願いします。 |
|
困り度:
|
||
| 質問投稿日時: 07/10/11 04:32 |
||
回答良回答20pt |
|
| ANo.1 | ALTER SESSIONでは現行セッションにしか(そのSQLPLUSにしか)影響しないはずです。 ALTER SYSTEMで一時的にDB全体にSQL_TRACEを設定するか、 JavaのDBセッションをV$SESSIONから拾って DBMS_SYSTEM.SET_SQL_TRACE_IN_SESSION を使ったSQLトレースをしてみてはいかがでしょう? |
|---|---|
| 回答者:ossan_hiro | |
| 種類:アドバイス どんな人:一般人 自信:参考意見 |
|
| 回答日時: 07/10/13 23:42 |
|
| |
| この回答へのお礼 | 遅くなって申し訳ありません。 ALTER SYSTEM で取得する事ができました。 ありがとうございました。 |