DBMS_LOGMNR.START_LOGMNR
のコールに成功し、V$LOGMNR_CONTENTS
ビューから選択した後でも、現在のLogMinerセッションを終了せずにDBMS_LOGMNR.START_LOGMNR
を再度コールし、異なるオプションおよび時間範囲またはSCN範囲を指定できます。次の場合にコールを複数回行います。
LogMinerが分析するREDOデータの量を制限する。
異なるオプションを指定する。たとえば、PRINT_PRETTY_SQL
オプションを指定する場合、コミット済トランザクションのみを表示する場合(COMMITTED_DATA_ONLY
オプションを指定)などがあります。
分析する時間範囲またはSCN範囲を変更する。
例: DBMS_LOGMNR.START_LOGMNRの複数回のコール
次に、どのような場合にDBMS_LOGMNR.START_LOGMNR
を複数回コールすると役立つかの例を示します。
例1: REDOログ・ファイルのデータのサブセットのみのマイニング
LogMinerがマイニングするREDOログ・ファイルのリストに、1週間の間に生成されたログ・ファイルが含まれているとします。ただし、それぞれの日の12:00から1:00の間に生成されたログ・ファイルのみを分析します。これを最も効率的に行う方法は次のとおりです。
月曜日に、この時間範囲を指定して、DBMS_LOGMNR.START_LOGMNR
をコールします。
V$LOGMNR_CONTENTS
ビューから変更を選択します。
一週間のそれぞれの日に対して、手順1と2を繰り返します。
この方法では、その週のREDOデータの合計量が多い場合、リスト内の各REDOログ・ファイルの小さなサブセットのみがLogMinerによって読み込まれるため、全体の分析が非常に速く行われます。
例2: 時間範囲またはSCN範囲の調整
REDOログ・ファイル・リストを指定し、LogMiner起動時に時間範囲(またはSCN範囲)を指定するとします。V$LOGMNR_CONTENTS
ビューを問い合せると、指定した時間範囲には、必要なデータの一部のみが含まれます。時間範囲を1時間拡張するために、またはSCN範囲を調整するためにDBMS_LOGMNR.START_LOGMNR
を再度コールできます。
例3: リモート・データベースで受信された場合のREDOログ・ファイルの分析
変更を分析またはデータベース間で変更をレプリケートするためのアプリケーションを作成したとします。ソース・データベースは、そのREDOログ・ファイルをマイニング・データベースに送信し、オペレーティング・システム・ディレクトリに格納します。アプリケーションは、次の手順を実行します。
現在ディレクトリにあるすべてのREDOログ・ファイルをREDOログ・ファイル・リストに追加します。
適切な設定でDBMS_LOGMNR.START_LOGMNR
をコールし、V$LOGMNR_CONTENTS
ビューから選択します。
ディレクトリに新しく受信されたREDOログ・ファイルを追加します。
必要に応じて、手順2と3を繰り返します。