所定の時刻になるまでまたはSCNに到達するまで問合せが終了しないように指定するには、DBMS_LOGMNR.START_LOGMNR
プロシージャへのコールで、CONTINUOUS_MINE
オプションを使用し、ENDTIME
オプションまたはENDSCN
オプションのいずれかを、将来の時刻またはまだ到達していないSCN値に設定します。
この例では、現在から5時間後までの間に表hr.employees
に対して行われたすべての変更を監視するとします。また、オンライン・カタログ内のディクショナリを使用するとします。
LogMinerを起動します。
EXECUTE DBMS_LOGMNR.START_LOGMNR(-
STARTTIME => SYSDATE, - ENDTIME => SYSDATE + 5/24, - OPTIONS => DBMS_LOGMNR.CONTINUOUS_MINE + - DBMS_LOGMNR.DICT_FROM_ONLINE_CATALOG);
V$LOGMNR_CONTENTS
ビューを問い合せます。
この選択操作は、分析する時間範囲(現在から5時間)後に生成される最初のREDOログ・ファイル・レコードが検出されるまで完了しません。[Ctrl]キーを押しながら[C]キーを押すと、完了前に選択操作を中止できます。
この例では、SET
ARRAYSIZE
文を指定して、行がREDOログ・ファイルに入力されたとおりに表示されるように設定しています。SET ARRAYSIZE
文を指定していない場合、SQL内部バッファが一杯になるまで行は返されません。
SET ARRAYSIZE 1; SELECT USERNAME AS usr, SQL_REDO FROM V$LOGMNR_CONTENTS WHERE SEG_OWNER = 'HR' AND TABLE_NAME = 'EMPLOYEES';
LogMinerセッションを終了します。
EXECUTE DBMS_LOGMNR.END_LOGMNR();