恢復oracle資料庫誤刪資料

2021-10-22 04:26:03 字數 940 閱讀 4223

一、通過scn恢復刪除

1、獲得當前資料庫的scn號

select current_scn from v$database; (切換到sys使用者或system使用者查詢)

查詢到的scn號為:1499223

2、查詢當前scn號之前的scn

select * from 表名 as of scn 1499220; (確定刪除的資料是否存在,如果存在,則恢復資料;如果不是,則繼續縮小 scn號)

3、恢復刪除且已提交的資料

flashback table 表名 to scn 1499220;

**二、通過時間恢復

1、查詢當前系統時間

select to_char(sysdate,『yyyy-mm-dd hh24:mi:ss』) from dual;

2、查詢刪除資料的時間點的資料

select * from 表名 as of timestamp to_timestamp(『2013-05-29 15:29:00』,『yyyy-mm-dd hh24:mi:ss』); (如果不是,則繼續縮小範圍)

3、恢復刪除且已提交的資料

flashback table 表名 to timestamp to_timestamp(『2013-05-29 15:29:00』,『yyyy-mm-dd hh24:mi:ss』);

注意:如果在執行上面的語句,出現錯誤。可以嘗試執行 alter table 表名 enable row movement; //允許更改時間戳

或者insert into t_viradsl2 select * from t_viradsl2 as of timestamp to_date('2011-01-19 15:28:00', 'yyyy-mm-dd hh24:mi:ss')             //已將誤刪除資料插入表中**

oracle資料庫誤刪閃回恢復

由於誤操作導致資料庫執行ddl drop操作,可以通過 站閃回恢復 首先查詢 站的資訊 select object name,original name,partition name,type ts name,createtime,droptime from recyclebin order by ...

oracle資料庫刪除誤刪資料恢復(已經誤刪)

1 select current scn from v database 查詢當前的scn的例如 9048068977098 2 select from ss 表名 as of scn 9048068975698 scn可以 1,直到找到自己有資料的scn 某個scn的前個節點是有資料的。3 sel...

ORACLE誤刪資料恢復

有很多原因導致了資料記錄的誤刪,怎樣恢復誤刪的記錄呢?先來看看這個概念 scn 系統改變號 它的英文全拼為 system change number 它是資料庫中非常重要的乙個資料結構。scn提供了oracle的內部時鐘機制,可被看作邏輯時鐘,這對於恢復操作是至關重要的 注釋 oracle 僅根據 ...