質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
Oracle Database

Oracle Databaseは、米オラクルが開発・販売を行うリレーショナルデータベース管理システムです。

Oracle

Oracleは、米オラクルが取り扱うリレーショナルデータベース管理システムです。メインフレームからPCまで、多様なプラットフォームに対応しています。

Q&A

2回答

7245閲覧

Oracle12cで特定テーブルへアクセスがあったかどうかの確認

sachito

総合スコア13

Oracle Database

Oracle Databaseは、米オラクルが開発・販売を行うリレーショナルデータベース管理システムです。

Oracle

Oracleは、米オラクルが取り扱うリレーショナルデータベース管理システムです。メインフレームからPCまで、多様なプラットフォームに対応しています。

0グッド

0クリップ

投稿2018/07/05 02:37

編集2018/07/05 03:53

特定のテーブルに対して、DML,DDLが実行されたかどうかを確認したいのですが、
方法はありますでしょうか?

単にアクセスがあったかどうかだけでも構いません。(どんなクエリが実行されたかは不明でも良い)

よろしくお願いします。

テーブルの最終アクセス時刻、でも良いです。
稼働中のDBにパフォーマンス影響を与えない方法を求めています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ALL_TAB_MODIFICATIONS, DBA_TAB_MODIFICATIONS, USER_TAB_MODIFICATIONS

注意:

これらのビューは、MONITORING属性を持つ表に対してのみ移入されます。また、長時間にわたる統計情報の収集を対象としています。パフォーマンス上の理由から、これらのビューは、実際に変更が行われた直後には移入されません。これらのビューに最新の情報を移入するには、DBMS_STATSPL/SQLパッケージのFLUSH_DATABASE_MONITORING_INFOプロシージャを実行します。このプロシージャを実行するには、ANALYZE_ANYシステム権限が必要です。

FLUSH_DATABASE_MONITORING_INFOプロシージャ
sysスキーマで
EXECUTE DBMS_STATS.FLUSH_DATABASE_MONITORING_INFO;
で実行。
ですが、パフォーマンスに影響を与えない方法はないでしょう。ここまでやってテーブル毎のアクセス数を調べる必要があるのでしょうか?

パフォーマンスに影響を与えますが、オラクルが提供する無償ツールのstatspack でSQL Statisticsからパフォーマンスの悪いSQL毎(テーブル毎ではない)の実行回数を調べた実用的に思えます。LOOPの中で同じをSQL何度も実行しているから直そう、って判断できます。

投稿2018/07/05 12:33

Orlofsky

総合スコア16415

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

DMLのトレースは、SQLトレースが一般的です。
アプリケーション・トレースの実行
但し、大量の情報を出力するので、一時的な調査目的で有効にするケースがほとんどだと思います。

DDLのトレースについては、使用したことはありませんが可能では有るようです。
13.19 DDL処理のトレース
内部的にはDDL履歴表を持っているようなので、そちらを確認すると良いかもしれません。

追記

特定のテーブルへのアクセスと言うところを見落としていたので追記、
DMLについては以下参考になるかもしれません。
テーブルに実行されたSQLの種類別回数を調査する

投稿2018/07/05 02:51

編集2018/07/05 03:00
sazi

総合スコア25206

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sachito

2018/07/05 03:52

ありがとうございます。 現状動作中のデータベースにパフォーマンス影響を与えない方法を探していますので、その旨を追記します。
sazi

2018/07/05 04:06

回答に書いたSQLトレース以外の所を確認して下さい
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問