日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux rman备份与恢复,RMAN备份与恢复 —— 完全恢复与不完全恢复

發布時間:2023/12/31 linux 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux rman备份与恢复,RMAN备份与恢复 —— 完全恢复与不完全恢复 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

名詞解釋:

顧名思義,完全恢復就是指數據沒有丟失的恢復了。不完全恢復是指恢復后有部分數據丟失。它們是數據庫的兩種恢復方式。

完全恢復:利用重做日志或增量備份將數據塊恢復到最接近當前時間的時間點。之所以叫做完整恢復是由于Oracle應用了歸檔日志和聯機重做日志中所有的修改。

不完全恢復:利用備份產生一個非當前版本的數據庫。換句話說,恢復過程中不會應用備份產生后生成的所有的重做日志。

通常在下列情況下生成整個數據庫的不完整恢復

● 介質失敗損壞了幾個或全部的聯機重做日志文件;

● 用戶操作造成的數據丟失,比如,用戶誤刪除了一張表;

● 由于個別歸檔日志文件的丟失無法進行完整的恢復;

● 丟失了當前的控制文件,必須使用備份的控制文件打開數據庫。

為了執行不完整介質恢復,必須使用恢復時間點以前的備份來還原數據文件,并在恢復完成后使用RESETLOG選項打開數據庫。

resetlogs參數

在不完全恢復期間,通常需要使用resetlogs命令打開數據庫,這是因為我們要從已經建立的現有重做日志流中脫離出來。resetlogs參數表示一個數據庫邏輯生存期的結束了另一個數據庫邏輯生存期的開始。數據庫的邏輯生存期也稱為一個對應物(incarnation)。每次使用resetlogs命令時,SCN計數器不會被重置,但是Oracle會重置其他計數器(如日志序列號),同時還會重置聯機重做日志的內容。

經過測試,當在非歸檔模式下嘗試執行完全恢復時,發出alter database open 后,RMAN會報如下錯誤:

SQL> alter database open;

alter database open

*

ERROR at line 1:

ORA-01589: must use RESETLOGS or NORESETLOGS option for database open

但是如果加上resetlogs,就不會報錯了。而且從恢復的過程來看,期間確實使用在聯機日志文檔,也就是說它執行的是完全恢復。這說明在非歸檔模式下執行完全恢復后,打開數據庫時也要重置重做日志。其實這也很好想,非歸檔模式下,沒有歸檔的重作日志,完全恢復時使用聯機日志后,這些聯機日志文件就沒什么用了,因此Oracle就重置日志文件序列號(個人覺得:理論上來說,是可以不重置的,日志文件的序號直接在現有的日志序號上增加,但是這樣日志序號會越來越大。Oracle應該是考慮到這一點就在非歸檔模式下執行完全恢復和不完全恢復時都重置了重做日志)。

完全恢復

完全恢復很簡單,不多說,如下:

$ rman target / ? ? ? ? ? ? ? ? ? ? ? ##登錄rman工具,如果使用了catalog,則登陸方法rman targetsys/Oracle@lscatalogcata/cata@leo

RMAN> startup mount ? ? ? ? ? ##必須為mount狀態,才能restore 和 recover 數據庫

RMAN> restore database; ? ? ##復制舊數據文件覆蓋損壞的數據文件

RMAN> recover database; ? ?##數據文件頭SCN號同步當前日志中最后一個SCN號【完全恢復】

RMAN> alter database open [resetlogs];

不完全恢復

不完全恢復有一個核心要領需要牢記:不完全恢復影響的是整個數據庫,不能只對數據庫的一部分執行不完全恢復。不完全恢復使用的方法通常有:基于時間、SCN、日志序列、還原點或基于刪除的恢復。

$ rman target /

RMAN> startup mount

RMAN>run

2> {

3> set until time "to_date('07/01/2015 15:00:00', 'mm/dd/yyyy hh24:mi:ss')";

4> restore database;

5> recover database;

6> alter database open;

7> }

從執行過程來看,不完全恢復就是加了一個限制條件,時間/SCN等。如上基于時間點的恢復,Oracle會查找目標恢復時間之前并與恢復時間最近的備份集。如果沒有找到可用的備份集,就會報錯。

--------------------------------------推薦閱讀 --------------------------------------

--------------------------------------分割線 --------------------------------------

總結

以上是生活随笔為你收集整理的linux rman备份与恢复,RMAN备份与恢复 —— 完全恢复与不完全恢复的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。