フラッシュバックテーブル フラッシュバックドロップ


フラッシュバックテーブル
UNDOデータを使用し、1つ以上の表を特定の時点の状態に戻すことができます。
特定の時点の状態を判断するために、フラッシュバック問い合わせ、行履歴フラッシュバック、
トランザクション履歴フラッシュバックなどを活用します。
! 実行には、行の移動が有効であることなどの条件があります。


行履歴フラッシュバック
SELECT VERSIONS_STARTSCN, VERSIONS_ENDSCN,VERSIONS_OPERATION, 列名, 列名
FROM テーブル名 VERSIONS BETWEEN TIMESTAMP SYSTIMESTAMP - INTERVAL '5' MINUTE  AND SYSTIMESTAMP;
                                 SCN    scn                                 AND scn;

現在のSCN確認
select current_scn from v$database;

バージョン(トランザクションID)問合せ
SELECT VERSIONS_XID  FROM テーブル名
VERSIONS BETWEEN SCN またはTIMESTAMP 値 AND 値
WHERE 条件 ;

フラッシュバックトランザクション問合せ
SELECT OPERATION, UNDO_SQL FROM FLASHBACK_TRANSACTION_QUERY
WHERE XID = 'トランザクションID' ;

 
フラッシュバックドロップ
表を削除すると、関連する索引、制約、データベーストリガーは元の表領域内に
リネームされた状態で残されている。
元に戻すことをフラッシュバックドロップといいます。
Flashback Dropは、参照整合性制約を戻しません 
パージを行うと表内のすべての行が削除され、データディクショナリから
定義が削除されます。表に作成された索引も同時に削除されます(ビューは自動的に削除されません)。


FLASHBACK TABLE テーブル名 TO BEFORE DROP;

確認テーブル
DBA_RECYCLEBIN

SHOW RECYCLEBIN

パージ 指定した表領域の削除オブジェクト解放
 PURGE TABLESPACE 表領域名;

削除されたオブジェクト名
 BIN$識別子 バージョン番号 

  
[一つ前に戻る] TOP PAGE
SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送