RMAN備份的並行

kingsql發表於2015-06-03

RMAN備份和恢復可以自動並行進行。並行度和分配的CHANNEL數量,以及備份集中檔案數量、FILESPERSET等諸多引數有關。


這個演算法比較複雜,牽掣多個引數,這裡不打算詳細討論。這篇檔案只是簡單說明,在預設引數的情況下,如果書寫RMAN命令才能保證RMAN備份、恢復操作並行執行。

RMAN對於一個命令中多個物件可以實現並行。但是對於多個連續的操作卻只能序列執行。

看下面例子的兩種不同情況:

RMAN> run
2> {
3> allocate channel c1 device type disk format 'f:oracleackup est1\%U';
4> allocate channel c2 device type disk format 'f:oracleackup est1\%U';
5> backup tablespace system, undotbs1;
6> }

分配的通道: c1
通道 c1: sid=14 devtype=DISK

分配的通道: c2
通道 c2: sid=15 devtype=DISK

啟動 backup 於 10-6月 -07
通道 c1: 正在啟動 full 資料檔案備份集
通道 c1: 正在指定備份集中的資料檔案
輸入資料檔案 fno=00002 name=F:ORACLEORADATATEST1UNDOTBS01.DBF
通道 c1: 正在啟動段 1 於 10-6月 -07
通道 c2: 正在啟動 full 資料檔案備份集
通道 c2: 正在指定備份集中的資料檔案
在備份集中包含當前的 SPFILE
備份集中包括當前控制檔案
輸入資料檔案 fno=00001 name=F:ORACLEORADATATEST1SYSTEM01.DBF
通道 c2: 正在啟動段 1 於 10-6月 -07
通道 c1: 已完成段 1 於 10-6月 -07
段 handle=F:ORACLEBACKUPTEST1BIJV5E2_1_1 comment=NONE
通道 c1: 備份集已完成, 經過時間:00:02:29
通道 c2: 已完成段 1 於 10-6月 -07
段 handle=F:ORACLEBACKUPTEST1CIJV5E2_1_1 comment=NONE
通道 c2: 備份集已完成, 經過時間:00:02:54
完成 backup 於 10-6月 -07
釋放的通道: c1
釋放的通道: c2

RMAN> run
2> {
3> allocate channel c1 device type disk format 'f:oracleackup est1\%U';
4> allocate channel c2 device type disk format 'f:oracleackup est1\%U';
5> backup tablespace system;
6> backup tablespace undotbs1;
7> }

分配的通道: c1
通道 c1: sid=14 devtype=DISK

分配的通道: c2
通道 c2: sid=15 devtype=DISK

啟動 backup 於 10-6月 -07
通道 c1: 正在啟動 full 資料檔案備份集
通道 c1: 正在指定備份集中的資料檔案
在備份集中包含當前的 SPFILE
備份集中包括當前控制檔案
輸入資料檔案 fno=00001 name=F:ORACLEORADATATEST1SYSTEM01.DBF
通道 c1: 正在啟動段 1 於 10-6月 -07
通道 c1: 已完成段 1 於 10-6月 -07
段 handle=F:ORACLEBACKUPTEST1DIJV81B_1_1 comment=NONE
通道 c1: 備份集已完成, 經過時間:00:01:57
完成 backup 於 10-6月 -07

啟動 backup 於 10-6月 -07
通道 c1: 正在啟動 full 資料檔案備份集
通道 c1: 正在指定備份集中的資料檔案
輸入資料檔案 fno=00002 name=F:ORACLEORADATATEST1UNDOTBS01.DBF
通道 c1: 正在啟動段 1 於 10-6月 -07
通道 c1: 已完成段 1 於 10-6月 -07
段 handle=F:ORACLEBACKUPTEST1EIJV850_1_1 comment=NONE
通道 c1: 備份集已完成, 經過時間:00:01:15
完成 backup 於 10-6月 -07
釋放的通道: c1
釋放的通道: c2

對於BACKUP TABLESPACE SYSTEM, UNDOTBS1這個命令,RMAN可以自動將兩個檔案分散到兩個BACKUP SET中,由兩個CHANNEL同時進行備份。

而對於BACKUP TABLESPACE SYSTEM和BACKUP TABLESPACE UNDOTBS1兩個命令,RMAN無法將其並行執行,因此只能順序的執行兩個備份操作。

顯然,前者的效率要比後者高。在寫備份和恢復命令的時候,儘量採用前面一種方式,充分利用並行備份和恢復帶來的效能優勢。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28389881/viewspace-1683325/,如需轉載,請註明出處,否則將追究法律責任。

相關文章