Oracle 恢復被刪除的表/數據

恢復被delete的數據

假設表名稱爲:table_delete 

查看系統當前時間

--獲得系統當前時間

 select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'from dual


查看刪除數據之前的某個時間點該表裏面的數據

 select * from table_delete as of timestamp to_timestamp('2015-12-18 17:16:00','yyyy-mm-dd hh24:mi:ss'); 


如果這個時間點裏面有被刪除的數據,則恢復數據到這個時間

 flashback table table_delete  totimestamp to_timestamp('2015-12-18 17:16:00','yyyy-mm-dd hh24:mi:ss'); 

 

如果出現

不能閃回表

則執行

 alter table table_delete enable row movement


如果出現
truncate錯誤
則是因爲該表是被truncate的,該方法無效

恢復被truncate的表

假設被刪除的表名稱爲:testtruncate 

查看回收站

select * from user_recyclebin order by droptime desc ;

恢復

 flashback table testtruncate to before drop

 或者

 flashback table "BIN$KdgUA10bBhngUwEAAH8dOA==$0" to before drop rename to newName

注意:表名用雙引號

 









發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章