oracle 誤刪某條資料

2021-07-24 21:11:26 字數 781 閱讀 4221

今天同事操作oracle資料庫時,做乙個從源端庫插入到目標端庫的操作,要先將目標庫的相同id的一行刪掉,再講源端的資料插過來,結果一粗心將源庫的資料行刪掉了,刪掉之後還commit了。

於是乎,生產環境下產生的誤操作,如果沒有commit可以rollback。這是乙個悲催的故事。

好在發生的時候業務不繁忙,而且事故發生在5分鐘之內,這個時候剛delete掉的資料應該還在undo裡

立馬在源端執行一條查詢

select

*from account as

oftimestamp to_timestamp('

2016-11-22 08:00:00

', '

yyyy-mm-dd hh24:mi:ss

') where equid=2341333;

然後建立乙個臨時表放資料  

create table test select

*from account as

oftimestamp to_timestamp('

2016-11-22 08:00:00

', '

yyyy-mm-dd hh24:mi:ss

') where equid=2341333;

然後將test表的資料插入到目標端上

想了一下如果當時,undo被覆蓋了的話那就悲劇了,只能使用rman+archive 歸檔異機恢復。不過現實是該生產庫太大約30t

,沒有rman備份。

不知道閃回還有沒有其他可以恢復的方法。

ORACLE誤刪資料恢復

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

oracle誤刪資料恢復

oracle誤刪資料恢復 scn 系統改變號 它的英文全拼為 system change number 它是資料庫中非常重要的乙個資料結構。scn提供了oracle的內部時鐘機制,可被看作邏輯時鐘,這對於恢復操作是至關重要的 注釋 oracle 僅根據 scn 執行恢復。它定義了資料庫在某個確切時刻...

oracle恢復誤刪資料

1.delete誤刪除的解決方法 原理 利用oracle提供的閃回方法,如果在刪除資料後還沒做大量的操作 只要保證被刪除資料的塊沒被覆寫 就可以利用閃回方式直接找回刪除的資料 具體步驟為 確定刪除資料的時間 在刪除資料之前的時間就行,不過最好是刪除資料的時間點 用以下語句找出刪除的資料 select...