oracle 11g ocp 筆記(15)--使用rman進行備份
一、備份的術語
關閉與打開(冷備和熱備 一致性備份和非一致性備份) 打開的備份只能是歸檔模式下
全部與局部 局部備份只能是歸檔模式下。
完整備份和增量備份 增量備份分為 累計增量備份和差異增量備份。
rman 能備份的文件有:數據文件、歸檔文件、控制文件、spfile,備份集片
不能備份的文件有:redo log 臨時文件、口令文件、pfile,oracle net文件。
rman可以分三類 備份集、壓縮備份集和影像副本。 備份集是增量或者是完整的,鏡像只能是完整的,
備份集
存儲庫(repository )是有關備份的元數據,存儲在控制文件中或者輔助數據庫中。
二、創建備份
1、一致性備份。
rman而言: 幹凈的關閉數據庫,啟動到mount狀態。備份數據庫(rman讀取控制文件的快照實現)
mount狀態下用戶管理的全備份無效,因為控制文件會頻繁讀寫。
run{
shutdown immediate;
startup mount;
allocate channel d tyoe desk;
backup as backupset database
format ‘ d:\1.bak‘;
alter database open;
}
rman target sys/oracle@orcl @backup.man
2 ) 服務器管理的打開狀態的備份。
run{
allocate channel t1 type sbt_disk;
allocate channel t2 type sbt_disk;
backup as compressed backupset filesperset 4 database;
backup as compressed backupset archivelog all delete all input;
}
如果dbwn正在寫,會有塊斷裂,oracle會嘗試再次復制他。
backup as backupset format ‘/back/df_%d_%f_%s‘ tablespace users %d 數據庫id 備份機編號 備份片編號。
backup as backupset datafile 4
backup as backup archivelog like ‘/ach/arch_1_%‘
3)增量備份
起點是0級,backup as backupset incremental level 0 database;
默認一級備份也會讀取整個文件,優點是檢查壞塊,缺點是慢,可以開啟塊跟蹤, CTWR進程。
塊跟蹤文件位於:db_create_file_dest。
alter database enable block tracking useing file ‘d:\1.dbf‘
校驗: select * from v$block_change_tracking --大小
select program from v$process where program like ‘%CTWR%‘
使用v$backup_datafile進行跟蹤。
4)副本備份
控制文件、日誌文件、數據文件組成,不能有spfile??
backup as copy database;
backup as copy archivelog all delete all input。
5)保護備份
backup as backup devicce type disk copies database plus archivelog;
backup device type sbt_tape backupset all delete all input; 將磁帶上的備份拷貝到磁盤上。
backup recovery area;
backup recovery files;
6)並行化備份
啟動備份會至少啟動 默認會話和輪詢會話:讀寫磁盤或者磁帶時,需要第三個會話:通道。
select username,program from v$session order by program;查詢這三個會話。
並行備份:通道數、備份集數、輸入文件數
backup as backupset database files per set 8;如果100個文件,則13個備份機,並行度是4.
7)加密備份
set encryption algorithm ‘aes256’ identified by pa55word;
backup as compressed backupset database format ‘/u01/sss。bak’;
還原時要增加
set decryption identified bu pa55word才可以。
三、配置rman默認值
show all 顯示配置的數值。
使用configure進行修改。
----如何再恢復成默認值來著????
四、管理和監視rman備份
1) list 、report 和delete命令
·list backup;
·list copy;
·list backup of database; -- 列出已經執行並記錄在倉庫中的所有備份
·list backup of datafile 1; -- 列出數據文件的所有備份
·list backup of archivelog all; -- 列出歸檔的重做日誌文件的所有備份
·report need backup; -- 需要備份的所有內容(根據rman的配置保留策略)
·report obsolete; -- 不再需要的所有備份(根據rman的配置保留策略)
·crosscheck -- 強制rman將倉庫與實際要求對比,所丟失內容標記為EXPIRED.
·delete expired -- 從倉庫刪除對過期備份的引用
·delete obsolete -- 從磁盤或磁帶中刪除所有不再需要的備份,並從倉庫刪除備份的引用。
·catalog -- 將用戶管理的備份的位置包含在倉庫中.
2)歸檔備份:
backup XXX keep { forever | until time xxxx } [ restore point XXXX] -----restore point XXXX 是在控制文件中的名稱。
歸檔日誌被移走後v$archived_log仍存在的處理:
rman target /
RMAN> crosscheck archivelog all;
RMAN> delete expired archivelog all
RMAN> exit
3)動態性能視圖:
v$backup_files
v$backup_set
v$backup_peace
v$backup_redolog --一條redo備份一行記錄
v$backup_spfile -- 一條spfile 一行信息
v$backup_datafile --
v$backup_device --rman連接到的sbt
v$rman_configuration --rman配置信息。
4)交叉檢驗
crosscheck backup of database;
delete expired --不刪除文件,只是將資料庫中刪除croesscheck是標記為expired的備份。
delete obsolete --刪除磁盤文件和資料庫記錄。
oracle 11g ocp 筆記(15)--使用rman進行備份