oracle恢復刪除的表或表記錄的方法

2021-05-23 12:55:42 字數 970 閱讀 7746

文章分類:資料庫

一:表的恢復

對誤刪的表,只要沒有使用purge永久刪除選項,那麼從flash back區恢復回來希望是挺大的。一般步驟有:

1、從flash back裡查詢被刪除的表

select * from recyclebin

2.執行表的恢復

flashback table  tb  to before drop,這裡的tb代表你要恢復的表的名稱。

二:表資料恢復

對誤刪的表記錄,只要沒有truncate語句,就可以根據事務的提交時間進行選擇恢復,一般步驟有:

1、先從flashback_transaction_query檢視裡查詢,檢視提供了供查詢用的表名稱、事務提交時間、undo_sql等字段。

如:select * from flashback_transaction_query where table_name='test';

2、執行表記錄恢復

一般先根據時間進行查詢,查詢語句模式為select * from tb as of timestamp to_timestamp(time,'yyyy-mm-dd hh24:mi:ss'); tb指表名稱,time指某個時間點

如select * from scott.test as of timestamp to_timestamp('2009-12-11 20:53:57','yyyy-mm-dd hh24:mi:ss');

若有資料,恢復極為簡單了,語句為flashback table tb to timestamp to_timestamp(time,'yyyy-mm-dd hh24:mi:ss');

如flashback table scott.test to timestamp to_timestamp('2009-12-11 20:47:30','yyyy-mm-dd hh24:mi:ss');

ORACLE恢復刪除表或表記錄

對誤刪的表,只要沒有使用purge永久刪除選項,那麼從flashback table區恢復回來希望是挺大的。一般步驟有 1 從flashback table裡查詢被刪除的表 select from recyclebin order by droptime desc 2.執行表的恢復 flashbac...

oracle恢復刪除的表或表記錄的方法

一 表的恢復 對誤刪的表,只要沒有使用purge永久刪除選項,那麼從flash back區恢復回來希望是挺大的。一般步驟有 1 從flash back裡查詢被刪除的表 select from recyclebin 2.執行表的恢復 flashback table tb to before drop,...

Oracle刪除表恢復

恢復當天刪除了表而沒有記住表的名稱 儲存過程如下 create or replace procedure proc databack deletetime in varchar2 as 把當天已經刪除的資訊查詢出來放入游標 cursor mycursor is select object name ...