FLASHBACK TABLEの使用(DROP TABLEのリカバリ)


FLASHBACK TABLE句の使用し、DORPされたテーブルのリカバリを行います。
但し、DROP TABLE句でPURGEされていないことが条件です。
PURGEされるとゴミ箱(dba_recyclebin)に削除されたテーブルの情報が格納されないため、
FLASHBACK TABLE句でリカバリを行うことはできません。

【前提条件】
Oracle 11g XEを操作できる環境であること。
左側メニューにインストールマニュアルがあります。

— 削除対象テーブルを確認
SELECT * FROM test.T_TBL_TEST;
FLASHBACK TABLEの使い方01


— DROP TABLE句でテーブルを削除
DROP TABLE test.T_TBL_TEST;
FLASHBACK TABLEの使い方01

— DROP TABLE句で削除されたテーブルをdba_recyclebinで確認
SELECT owner, object_name, ts_name, droptime FROM dba_recyclebin;
FLASHBACK TABLEの使い方01

— スキーマ.object_nameを指定してフラッシュバックテーブルの使用
FLASHBACK TABLE test.”BIN$v1XOZj1E/8fgQAB/AQEN1g==$0″ TO BEFORE DROP;
FLASHBACK TABLEの使い方01

— 削除されたテーブルがリカバリされているか確認
SELECT * FROM test.T_TBL_TEST;
FLASHBACK TABLEの使い方01

 

【エラーについて】
ORA-38305: object not in RECYCLE BINが表示されることがあります。
これを和訳するとORA-38305:RECYCLE BIN にオブジェクトがありません。です。
つまるところ「指定したobject_nameからリカバリはできませんよ」というメッセージです。
10日でおぼえる Oracle11g入門教室(DVD付)
10日でおぼえる Oracle11g入門教室(DVD付)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です