Oracle資料庫利用日誌挖掘來恢復誤刪除的資料

2021-08-27 09:30:36 字數 977 閱讀 8562

在資料庫操作中,當我們誤刪除了表、資料或者是檢視等,可以利用日誌挖掘oracle不完全恢復進行恢復,本文主要就介紹了利用日誌挖掘oracle不完全恢復來恢復資料的方法,接下來我們就開始介紹這一過程。

實施該方法需要滿足兩個條件:1. db工作在歸檔模式下;  2. 有冷準備份的資料檔案。

接下來我們介紹恢復過程,格式如下:

-- 拼接從**挖的語句

-- 從**挖

-- 開始挖

-- 找結果 --> 要恢復的語句時的時間戳;

-- 關掉db

-- 拷貝冷備的檔案 -- *.dbf 到資料檔案目錄下,並進行覆蓋;因為要利用日誌把 sys,user等表空間的資料,重做一次;

-- 啟動到 mount 下

-- 恢復到 1037333 drop table scott.emp purge  的時間點;

-- 要求:trc

-- 啟動db in resetlogs;

原理:1.冷備份的資料檔案 *.dbf比現在要舊,那麼資料檔案的scn肯定就比現在的小;

2.使用日誌挖掘方法,在日誌中找出刪表時的scn;

3.在資料庫shutdown 的狀態下,用冷備份的資料檔案 *.dbf,覆蓋現在的*.dbf檔案;-- 保證資料檔案完整性

4.啟動db到 mount 下, 恢復到日誌挖掘的時間點(利用日誌對資料檔案重做一次)

5.以 resetlog 方式 open --- 以前的日誌就覆蓋了;

ps:資料庫有四種狀態shutdown、nomount、mount、open。

shutdown是指關閉狀態。

nomount是指根引數檔案已經構造出例項的狀態。

mount是指為例項開啟控制檔案,並讀出控制檔案中相關資訊,但並不驗證。

open是指對相關檔案進行驗證,如沒有問題,就開啟,讓使用者可以訪問。

關於利用日誌挖掘oracle不完全恢復恢復誤刪除的表/資料/檢視等的操作就介紹到這裡了,希望能夠帶給您一些收穫吧!

oracle日誌挖掘

oracle日誌挖掘是一種十分強大的資料恢復技術,只要你保障你的歸檔日誌和重做日誌是完整的,那麼就可以將你的資料恢復到任何時刻。簡單敘述一下日誌挖掘的基本原理,然後進行乙個簡單的小實驗。日誌挖掘時基於redo日誌和歸檔日誌的基礎之上來進行日誌載入並進行恢復,挖掘,挖掘,挖的就是你的redo日誌和歸檔...

ORACLE利用模板建立資料庫

1.準備檔案 模板檔案,該檔案可在oracle安裝好的路徑中獲得 oracle home assistants dbca templates 下有模板檔案data warehouse.dbc general purpose.dbc 我們一般用第二個檔案就可以了 還需要乙個響應檔案,該檔案可從軟體包中...

利用Oracle資料庫傳送郵件

create orreplace procedure send mail 2p recipient varchar2 郵件接收人 3p subject varchar2 郵件標題 4p message varchar2 郵件正文5 6is78 下面四個變數請根據實際郵件伺服器進行賦值 9v mail...