您好,登錄后才能下訂單哦!
RMAN備份filesperset用法
用filesperset控制備份集的尺寸
當指定filesperset參數時,rman比較filesperset與自動計算出來的值(對每個已分配通道的文件數目)
并取其中較小的那個值來保證所有的通道被使用。
如果指定或者通過組合backupSpec語句暗示的文件數目比filesperset要大,
那么rman創建多個備份集來維護正確的速率(ratio);
如果沒有指定filesperset,rman比較計算出來的值(文件數目除以已分配的通道)和默認值64,
并取其中較小的那個值來保證所有通道可用。
Rman通常嘗試創建足夠的備份集以使所有已分配的通道有事可做。
一個例外是通道比要備份的文件還要多
allocate channel 提供備份并發度,若平均文件數<filesperset則會按照 平均文件數/備份集 進行備份,若超過則按照filesperset的數量生成備份集;例如:
1、run {
allocate channel ch2 type disk;
allocate channel ch3 type disk;
backup datafile 3,4,5,6 filesperset 3;
release channel ch2;
release channel ch3;
}
平均數是 4(文件數)/2(channel數) = 2 ,小于filesperset 3,則生成2個備份集,每個備份集包含2個數據文件
2、run {
allocate channel ch2 type disk;
allocate channel ch3 type disk;
backup datafile 3,4,5,6 filesperset 1;
release channel ch2;
release channel ch3;
}
則生成4個備份集,每個包含一個數據文件
創建RMAN備份 恢復目錄數據庫
這是前段時間給客戶做的RMAN備份策略,今天有時間整理出來,希望對大家有些幫助,如有不對的地方歡迎大家給予指點,謝謝!
1.創建恢復目錄數據庫
如果不是在本地配置RMAN恢復目錄,
在一臺WINDOW2000電腦上安裝ORACLE數據庫,最好保證數據庫版本與目標數據庫的版本想同。
建立RMAN 數據庫用戶及表空間:
RECOVER CATALOG 表空間(cattbs):1G
系統表空間: 100M
UNDO表空間: 100M
臨時表空間(TEMP): 100M
用以下命令創建RMAN 用戶并授予權限:
create user rman identified rman default tablespace cattbs temporary tablespace temp;
授予權限:
Grant connect, resource to rman;
Grant recovery_catalog_owner to rman
創建恢復目錄:
進入RMN 如果恢復目錄與目標數據庫不在同一臺機子上,用以下:
Rman catalog rman/rman@192.168.100.144.
Rman> create catalog
C:/rman target sys/a123456@192.168.100.2 catalog rman /rman
Rman> register database;
如果想重新注冊,查詢數 據字典DB 得到DB_KEY與DB_ID 執行DBMS_RCVAT.UNREGISTERDATABASE 命令取消注冊。重新注冊。
Sql> conn rman/rman
Sql> select * from db;
Sql> exec dbms_rcvcat.unregisterdatabase(DB_KEY,DB_ID);
Rman> resync catalog;
每半年做一個數據庫的全備份(包含只讀表空間)
每個月做一次零級備份(不包含只讀表空間)
每個星期做一次一級備份
每天做一個二級備份
數據庫全備份腳本:
run {
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
backup full tag 'dbfull' format '/backup/ncfc/full%d%p%t' database ;
sql 'alter system archive log current' ;
backup format /backup/ncfc/dbL0/dbL0%d%p%t.arc' filesperset 5 archivelog all delete input;
release channel c1;
release channel c2;
release channel c3;
}
零級備份腳本(只讀表空間除外)
run {
allocate channel c1 type disk maxpiecesize =20G;
allocate channel c2 type disk maxpiecesize =20G;
allocate channel c3 type disk maxpiecesize =20G;
backup incremental level 0 filesperset 10 tag 'dbL0' format '/backup/ncfc/dbL0/dbL0%u%p%c ' database skip readonly;
sql 'alter system archive log current' ;
backup format '/backup/ncfc/dbL0/arch%u%p%c.arc' filesperset 5 archivelog from time "sysdate-1" all;
release channel c1;
release channel c2;
release channel c3;
}
一級備份腳本
run {
allocate channel c1 type disk maxpiecesize =20G;
allocate channel c2 type disk maxpiecesize =20G;
allocate channel c3 type disk maxpiecesize =20G;
backup incremental level 1 filesperset 5 tag 'dbL1' format '/backup/ncfc/dbL1/dbL1%d%p%t ' ddatabase skip readonly;
sql 'alter system archive log current' ;
backup format '/backup/ncfc/dbL1/dbL1%d%p%t.arc' filesperset 5 archivelog from time "sysdate-1" all;
release channel c1;
release channel c2;
release channel c3;
}
二級備份腳本
run {
allocate channel c1 type disk maxpiecesize =20G;
allocate channel c2 type disk maxpiecesize =20G;
allocate channel c3 type disk maxpiecesize =20G;
backup incremental level 2 filesperset 5 tag 'dbL2' format '/backup/ncfc/dbL2/dbL2%u%p%c' ddatabase skip readonly;
sql 'alter system archive log current' ;
backup format '/backup/ncfc/dbL2/dbL2%d%p%t.arc' filesperset 5 archivelog from time "sysdate-1" all;
release channel c1;
release channel c2;
release channel c3;
}
歸檔文件備份腳本
run {
allocate channel dev1 type disk maxpiecesize =20G;
allocate channel dev2 type disk maxpiecesize =20G;
allocate channel dev3 type disk maxpiecesize =20G;
sql 'alter system archive log current' ;
backup format '/backup/ncfc/arc/arch%u%p%c ' archivelog from time "sysdate-1" all;
release channel dev1;
release channel dev2;
release channel dev3;
}
表空間備份腳本(以users表空間為例)
run {
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
backup tag 'tabsp' format '/backup/ncfc/tabsp/tabsp%u%p%c' tablespace users;
sql 'alter system archive log current' ;
backup format 'e:\oradata\%d%p%t.arc' filesperset 5 archivelog all delete input;
release channel c1;
release channel c2;
release channel c3;
}
則每天所需要備份的數據量只有一天的改變量。而做恢復時最多只要恢復當月的一個零級備份+三個一級備份+6個二級備份+當天的歸檔文件。如果不能接受這樣的恢復時間,就只能夠減少零級備份之間的時間間隔(如可以每個星期做一個零級備份,這樣恢復時最多只需要恢復一個星期的數據量)。
備份CATALOG數據庫(數據庫邏輯輸出)
exp pafile=exp.dat
其中exp.dat如下
userid=rman/rman
file=rmanexp.dmp
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。