RMAN備份及恢復

2021-09-29 21:27:45 字數 4971 閱讀 1458

rman備份

1、spfile和controlfile的自動備份

當configure controlfile autobackup off時,僅當備份system01.dbf時才會自動備份controlfile和spfile;

當configure controlfile autobackup on時,當任意檔案備份時,都會自動備份controlfile和spfile;

2、備份整個庫

backup database;

backup databse plus achivelog;  同時備份歸檔日誌

3、備份表空間和資料檔案

備份users空間到磁帶上: backup device type sbt tabelspace users;

備份1到4的資料檔案及/tmp/system01.dbf: backup device type sbt datafile 1,2,3,4 datafilecopy '/tmp/system01.dbf';

4、非歸檔模式的備份(僅一致性備份)

shutdown immediate;

startup mount;

backup incremental level 0 maxsetsize 10m database tag 『back_1』;

5、備份歸檔日誌

執行其他備份時加上plus archivelog或 backup archivelog all 或 backup archivelog from sequence 100 until sequence 125;

archived redo log failover功能:當某個歸檔檔案損壞了,rman會自動掃瞄該檔案的其他拷貝;

備份後刪除歸檔日誌檔案:可在備份語句中加上delete [all] input子句;

7、增量備份

0級增量:backup incremental level 0 database;

1級differential備份:backup incremental level 1[differential]tablespace users;

1級cumulative備份:backup incremental level 1cumulativetablespace users;

8、備份輸出選項

指定備份集存放裝置:configure default device type; 或 backup database device type disk;

指定備份集型別:backup as copy device type diskdatabase;( 即image copy )

backup as backupset database;

backup as backupset device type disk database;

backup as backupset device type sbt database;

指定備份集檔案命名規則:backup database format 『+dggroup1';    存放到名為dggroup的磁碟組上

backup database format "/disk1/backup_%u";   /disk目錄下,%u表示每次備份集檔名要不同

9、指定tag

使用tag標記備份集,多個備份集可公用乙個tag,若不顯示指定,則每個備份集預設乙個tag

backup as backupset copies 1 datafile 7 tag ***x

rman恢復

1、完全恢復整個db,步驟如下:

確保db處於mount狀態,未open;

rman> restore database;   檔案還原到應存放位置;

rman> recover database;   執行恢復,redo及歸檔日誌中為應用內容將應用到db中;

開啟db;

2、恢復controlfile,步驟如下:

rman> list backup of controlfile;  檢查備份檔案;

確保db處於nomount狀態;

rman> restore controlfile from autobackup;  檔案還原到應存放位置;

修改db為mount狀態;

rman> recover database;    執行恢復;

sql> alter database open resetlogs;   開啟db,resetlog,即

其他rman命令:

1、刪除備份集或映象

crosscheck backup(copy);  必須先檢驗有哪些備份集和映象

delete backup(copy);  刪除所有備份或映象

2、report 用於判斷db的當前恢復狀態和提供db備份的特定資訊

2.1 指定最近沒有備份過資料檔案 

rman> report need backup days=3;   3天內沒有備份過的表空間

rman> report need backup incremental=3;    需要多少個增量備份檔案才能恢復的資料檔案;

2.2 報告備份冗餘或恢復視窗,確定為滿足備份冗餘策略而需要備份的資料檔案

rman> report need backup redundancy 2;  檔案備份冗餘度少於2個,若是1,則表示檔案沒有任何備份  

rman> report need backup recovery window of 1 days;   為備份建立乙個時間值最小的恢復視窗,且報告備份時間長於這個恢復視窗的資料檔案(報告出恢復需要1天歸檔日誌的資料檔案)

2.3 報告不可恢復的資料檔案

rman> report unrecoverable;

2.4 報告db的模式(資料檔名、檔案號、對應表空間、檔案大小、是否含有回滾段)

rman> report schema;

2.5 報告丟失的備份

rman> report obsolete;  

3、list命令

list incarnation;  彙總查詢

list backup summary;  概述可用的備份

list backup by file;   按照檔案型別分別列出

list backup;  列出已有備份集的詳細資訊

list expired backup;  列出過期的備份檔案

list backup of ;

list backup of archivelog ;

list copy;  列出映象

list copy of database;

list copy of controlfile;

list copy of tablespace users;

list copy of datafile n,n,n;

list copy of archivelog all;

list copy of archivelog from scn 100;

list copy of archivelog until sequence 11;

4、設定備份標記

backup database tag=『full_bak1』;  每個標記都是唯一的,相同標記可用於多個備份只還原最新的那個;

5、設定備份集大小

backup database maxsetsize=100m tag='datafile1';  這裡的大於db總資料檔案大小,否則報錯;

6、設定備份片大小(檔案系統限制)

run {

backup database tag='full_0';

release channel c1;

也可configure中配置

configure channel device type disk maxpiecesize 100m;

configure channel device type disk clear;

7、備份集的儲存策略

backup database keep forever; 永久保留

backup database keep until time='sysdate+30'; 儲存備份30天

8、重寫configure exclude   配置rman,排除上一次備份以來沒有發生變化的資料檔案,若要備份該些檔案,則用noexclude

backup databse noexclude(exclude) keep forever tag='full_backup';

9、檢查db錯誤

backup validate database;   掃瞄db的邏輯和物理錯誤,不執行實際備份

10、跳過離線、不可訪問、唯讀檔案

backup database skip readonly;

backup database skip offline;

backup database skip inaccessible;

backup database skip readonly skip offline skip inaccessible;

11、強制備份

backup database force;

12、基於上次備份時間備份資料檔案

1>只備份新增的新檔案  backup database not backed up;

2>備份在限定週期內未備份的檔案  backup database not backed up since time='sysdate-2';

3>備份期間檢查邏輯錯誤

backup check logical database;

backup validate check logical database;

13、生成備份副本

backup database copies=2;

14、備份控制檔案

backup database device type disk include current controlfile;

RMAN備份恢復Oracle

一 備份與恢復概述 1 需要備份的原因 現實工作中有很多情況都可能造成資料丟失,造成資料丟失的主要因素如下。n 介質故障 磁碟損壞 磁頭碰撞,瞬時強磁場干擾 n 使用者的錯誤操作 n 伺服器的徹底崩潰 n 計算機病毒 n 不可預料的因素 自然災害 電源故障 盜竊 上面是一些可能的故障原因,根據原因可...

Rman備份及異機恢復步驟

一 rman備份指令碼 run allocate channel c1 device type disk configure retention policy to redundancy 3 configure archivelog backup copies for device type dis...

RMAN備份恢復之BLOCKRECOVER

rman提供了單獨恢復個別block的功能,這種功能作為普通恢復方法的補充,對於恢復資料庫中出現的壞塊可以快速的進行恢復。rman的blockrecover是利用乙個全備份作為基礎,在此基礎中應用日誌,對於需要恢復的個別block進行恢復。下面演示乙個blockrecover的簡單例子,首先是構造乙...