動的パフォーマンスビューの中で、例えば、V$SQLには、実行されたSQLがセットされていますが、同じような感じで、プロシージャやファンクションがセットされている動的パフォーマンスビューは無いものでしょうか?
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
ベストアンサー
マニュアル上の動的パフォーマンスビューの一覧をざっとみてみましたが、そのようなものは無さそうですね。
監査機能を使えば取得出来るようです。
sql
1AUDIT EXECUTE PROCEDURE BY ACCESS ; 2 3SELECT obj_name, timestamp FROM DBA_AUDIT_TRAIL ;
投稿2017/09/02 14:31
編集2017/09/02 14:47総合スコア1149
0
静的データ・ディクショナリ・ビューですが、user_source。
Oracle9i以降でしたら、Oracle Objectの取得を使うこともできます。
投稿2017/08/29 18:08
総合スコア16415
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
Orlofsky様
ご回答ありがとうございます。
うーん、これは登録されているパッケージやファンクションを見るものですよね。。。
実行履歴というか、サーバーに実行依頼が行われた、履歴。
つまり、V$SQLのような、発行履歴のようなものを見れるビューは無いものなのでしょうか?
2017/08/31 19:16
V$SQLのような動的パフォーマンスビューはいつまでデータが残っている、といった保障はありません。
どうしても発行履歴が必要なら、ストアド・プログラムの中でDBMS_OUTPUT.PUT_LINE('PROGRAM_NAME ' || TO_CHAR(SYSDATE, 'YYYY/MM/DD HH24:MI:SS');
でSPOOLしたり、別に履歴テーブルを用意して発行情報を書き込んだりします。
退会済みユーザー
2017/09/02 05:16
現行システムにて、全プロシージャに履歴を入れるのは現実的ではないのです。
プロシージャの数は膨大なのです。
なんとか、システムに手を入れずに、動作したプロシージャやファンクションの履歴を見る方法は無いものでしょうか?
2017/09/02 06:30 編集
何の為にやりたいのかわかりませんが、多少なりともパフォーマンスが悪くなるのに全プロシージャの履歴を取得する必要があるのでしょうか?
機能的にあるとしたらTRIGGERでしょう。SQL言語リファレンス マニュアルのCREATE TRIGGERをしらべてみては?サポート契約が有効でしたら、サポートセンターに質問するのもいいでしょう。
退会済みユーザー
2017/09/02 07:04
いえ、全プロシージャの履歴ではありません。
ある特定の機能を動作させた時に動作するプロシージャを特定させたいのです。
そもそも、どのプロシージャが動作しているのかわからないので、ログを仕込んだり、トリガーを使うと言っても、どのプロシージャに履歴を入れたらいいのかわからないのです。
そういう状況なので。。。
サポート契約なんてありません。
もうこれはお手上げですかね。。。
2017/09/02 11:55
>ある特定の機能を動作させた時に動作するプロシージャを特定させたいのです。
で実行されるSQLを調べてください。SQLが実行された直後ならV$SQL, V$SQL_BIND_CAPTUREなどに残っています。
http://replication.hatenablog.com/entry/2015/06/08/090000
オラクルはライセンスもサポート料も高いので他のDBに移行しているユーザーが多いです。それなりに能力がある技術者でないとOracleの仕事はなくなるでしょう。自分の能力に見合った仕事で、きちんと勉強できる職場かは考えましょう。わたしはオラクルサポート契約が有効で自分で直接サポートに問合せることができない仕事は断っています。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/10/07 03:39