2008年02月28日

フラッシュバックドロップ!

なんか、プロレスの技みたいですが、違います。

ついに、Oracle10gになってDROPしてしまったテーブルを復活できるようになりました。(フラッシュリカバリの進化形ですね)

間違って「SAMPLE」テーブルをDROPしてしまったとします。

DBA権限を持つユーザ(SYSTEMとか)で以下のSQL実行します。
↓のSQLはOracleの「ゴミ箱」を表示します。(NLSSORT関数のくだりは、大文字/小文字を無視する指定です)
select original_name, type, ts_name, droptime, dropscn, object_name, owner
from dba_recyclebin
where NLSSORT(owner, 'NLS_SORT=BINARY_CI') = NLSSORT('taipei_neko', 'NLS_SORT=BINARY_CI')


original_nametypets_namedroptimedropscnobject_nameowner
SAMPLETABLEUSERS2008-02-23:18:29:03629095BIN$TxcezCXaS4iFz2XLZVvS5Q==$0TAIPEI_NEKO


ゴミ箱に残っています。
では、これを復活します。「TAIPEI_NEKO」ユーザで以下のSQLを実行します。

flashback table sample to before drop

もう一度↓を実行しても、先ほど表示されたSAMPLEテーブルのデータは表示されません。
SAMPLEテーブルは復活しました。
select original_name, type, ts_name, droptime, dropscn, object_name, owner
from dba_recyclebin
where NLSSORT(owner, 'NLS_SORT=BINARY_CI') = NLSSORT('taipei_neko', 'NLS_SORT=BINARY_CI')


ただし、SYSTEM表領域のテーブル、ローカル表領域以外のテーブル、ファイングレイン監査・
仮想プライベートデータベース(VPD)が使用されているテーブルは対象外です。
posted by 台北猫々 at 22:42| Comment(0) | TrackBack(1) | 技術メモ(Oracle)
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/11587440

この記事へのトラックバック

ラッセルモカシンキャバリエ(バックドロップモデル)
Excerpt: ラッセルモカシンキャバリエ(バックドロップモデル)バックドロップ別注のキャバリエです。1898年創業以来オールハンドメイドを貫き続け、今やモカシンブーツと言えば、ラッセルとまで呼ばれる様になった同ブラ..
Weblog: ラッセルモカシンファンサイト
Tracked: 2009-04-28 21:39