RMAN備份恢復——備份到帶庫的效能(二)
簡單測試了一下rac環境透過RMAN備份到帶庫的功能。
RMAN備份恢復——備份到帶庫的效能:http://yangtingkun.itpub.net/post/468/287035
上一篇文章介紹了備份到帶庫的時候,只有兩個節點同時備份才能使用多個驅動器,而單個節點即使分配了多個CHANNEL也使用一個驅動器並行執行。
現在發現,導致這個問題的原因是netbackup中設定的問題。
以root透過jnbSA進入圖形化介面:
在NetBackup Management中選擇Host Properties的Master Servers,雙擊列出的主機資訊:
在屬性Global Attributes的設定中,將Maximum jobs per client的設定由1調整為10。確保每個client都可以使用多個驅動器。點選確認。
下面再次測試備份:
RMAN> run
2> {
3> allocate channel c1 device type sbt;
4> backup database;
5> }
分配的通道: c1通道 c1: sid=290 例項=testrac1 devtype=SBT_TAPE通道c1: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)
啟動 backup 於 15-5月 -07通道 c1: 啟動全部資料檔案備份集通道 c1: 正在指定備份集中的資料檔案輸入資料檔案 fno=00006 name=+DISK/testrac/datafile/zhejiang01.dbf輸入資料檔案 fno=00007 name=+DISK/testrac/datafile/zhejiang02.dbf輸入資料檔案 fno=00009 name=+DISK/testrac/datafile/zhejiang03.dbf輸入資料檔案 fno=00011 name=+DISK/testrac/datafile/zhejiang04.dbf輸入資料檔案 fno=00012 name=+DISK/testrac/datafile/zhejiang05.dbf輸入資料檔案 fno=00014 name=+DISK/testrac/datafile/zhejiang06.dbf輸入資料檔案 fno=00008 name=+DISK/testrac/datafile/ndmain01.dbf輸入資料檔案 fno=00002 name=+DISK/testrac/datafile/undotbs1.263.618591197輸入資料檔案 fno=00004 name=+DISK/testrac/datafile/undotbs2.266.618591249輸入資料檔案 fno=00010 name=+DISK/testrac/datafile/ndindex01.dbf輸入資料檔案 fno=00013 name=+DISK/testrac/datafile/lt_index_ts01.dbf輸入資料檔案 fno=00001 name=+DISK/testrac/datafile/system.262.618591167輸入資料檔案 fno=00003 name=+DISK/testrac/datafile/sysaux.264.618591225輸入資料檔案 fno=00005 name=+DISK/testrac/datafile/users.267.618591279通道 c1: 正在啟動段 1 於 15-5月 -07通道 c1: 已完成段 1 於 15-5月 -07段控制程式碼=3oihq9v3_1_1 標記=TAG20070515T191546 註釋=API Version 2.0,MMS Version 5.0.0.0通道 c1: 備份集已完成, 經過時間:01:26:25通道 c1: 啟動全部資料檔案備份集通道 c1: 正在指定備份集中的資料檔案備份集中包括當前控制檔案在備份集中包含當前的 SPFILE通道 c1: 正在啟動段 1 於 15-5月 -07通道 c1: 已完成段 1 於 15-5月 -07段控制程式碼=3pihqf15_1_1 標記=TAG20070515T191546 註釋=API Version 2.0,MMS Version 5.0.0.0通道 c1: 備份集已完成, 經過時間:00:00:57完成 backup 於 15-5月 -07釋放的通道: c1
RMAN>
RMAN> run
2> {
3> allocate channel c1 device type sbt connect ;
4> allocate channel c2 device type sbt connect ;
5> backup database;
6> }
分配的通道: c1通道 c1: sid=285 例項=testrac1 devtype=SBT_TAPE通道c1: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)
分配的通道: c2通道 c2: sid=291 例項=testrac2 devtype=SBT_TAPE通道c2: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)
啟動 backup 於 16-5月 -07通道 c1: 啟動全部資料檔案備份集通道 c1: 正在指定備份集中的資料檔案輸入資料檔案 fno=00006 name=+DISK/testrac/datafile/zhejiang01.dbf輸入資料檔案 fno=00009 name=+DISK/testrac/datafile/zhejiang03.dbf輸入資料檔案 fno=00012 name=+DISK/testrac/datafile/zhejiang05.dbf輸入資料檔案 fno=00008 name=+DISK/testrac/datafile/ndmain01.dbf輸入資料檔案 fno=00010 name=+DISK/testrac/datafile/ndindex01.dbf輸入資料檔案 fno=00001 name=+DISK/testrac/datafile/system.262.618591167輸入資料檔案 fno=00005 name=+DISK/testrac/datafile/users.267.618591279通道 c1: 正在啟動段 1 於 16-5月 -07通道 c2: 啟動全部資料檔案備份集通道 c2: 正在指定備份集中的資料檔案輸入資料檔案 fno=00007 name=+DISK/testrac/datafile/zhejiang02.dbf輸入資料檔案 fno=00011 name=+DISK/testrac/datafile/zhejiang04.dbf輸入資料檔案 fno=00014 name=+DISK/testrac/datafile/zhejiang06.dbf輸入資料檔案 fno=00002 name=+DISK/testrac/datafile/undotbs1.263.618591197輸入資料檔案 fno=00004 name=+DISK/testrac/datafile/undotbs2.266.618591249輸入資料檔案 fno=00013 name=+DISK/testrac/datafile/lt_index_ts01.dbf輸入資料檔案 fno=00003 name=+DISK/testrac/datafile/sysaux.264.618591225通道 c2: 正在啟動段 1 於 16-5月 -07通道 c2: 已完成段 1 於 16-5月 -07段控制程式碼=3rihs2up_1_1 標記=TAG20070516T112828 註釋=API Version 2.0,MMS Version 5.0.0.0通道 c2: 備份集已完成, 經過時間:00:40:20通道 c2: 啟動全部資料檔案備份集通道 c2: 正在指定備份集中的資料檔案備份集中包括當前控制檔案通道 c2: 正在啟動段 1 於 16-5月 -07通道 c2: 已完成段 1 於 16-5月 -07段控制程式碼=3sihs5ad_1_1 標記=TAG20070516T112828 註釋=API Version 2.0,MMS Version 5.0.0.0通道 c2: 備份集已完成, 經過時間:00:01:07通道 c2: 啟動全部資料檔案備份集通道 c2: 正在指定備份集中的資料檔案在備份集中包含當前的 SPFILE通道 c2: 正在啟動段 1 於 16-5月 -07通道 c2: 已完成段 1 於 16-5月 -07段控制程式碼=3tihs5cg_1_1 標記=TAG20070516T112828 註釋=API Version 2.0,MMS Version 5.0.0.0通道 c2: 備份集已完成, 經過時間:00:01:06通道 c1: 已完成段 1 於 16-5月 -07段控制程式碼=3qihs2ut_1_1 標記=TAG20070516T112828 註釋=API Version 2.0,MMS Version 5.0.0.0通道 c1: 備份集已完成, 經過時間:00:44:09完成 backup 於 16-5月 -07釋放的通道: c1釋放的通道: c2
RMAN>
RMAN> run
2> {
3> allocate channel c1 device type sbt;
4> allocate channel c2 device type sbt;
5> backup database;
6> }
分配的通道: c1通道 c1: sid=290 例項=testrac1 devtype=SBT_TAPE通道c1: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)
分配的通道: c2通道 c2: sid=289 例項=testrac1 devtype=SBT_TAPE通道c2: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)
啟動 backup 於 16-5月 -07通道 c1: 啟動全部資料檔案備份集通道 c1: 正在指定備份集中的資料檔案輸入資料檔案 fno=00006 name=+DISK/testrac/datafile/zhejiang01.dbf輸入資料檔案 fno=00009 name=+DISK/testrac/datafile/zhejiang03.dbf輸入資料檔案 fno=00012 name=+DISK/testrac/datafile/zhejiang05.dbf輸入資料檔案 fno=00008 name=+DISK/testrac/datafile/ndmain01.dbf輸入資料檔案 fno=00010 name=+DISK/testrac/datafile/ndindex01.dbf輸入資料檔案 fno=00001 name=+DISK/testrac/datafile/system.262.618591167輸入資料檔案 fno=00005 name=+DISK/testrac/datafile/users.267.618591279通道 c1: 正在啟動段 1 於 16-5月 -07通道 c2: 啟動全部資料檔案備份集通道 c2: 正在指定備份集中的資料檔案輸入資料檔案 fno=00007 name=+DISK/testrac/datafile/zhejiang02.dbf輸入資料檔案 fno=00011 name=+DISK/testrac/datafile/zhejiang04.dbf輸入資料檔案 fno=00014 name=+DISK/testrac/datafile/zhejiang06.dbf輸入資料檔案 fno=00002 name=+DISK/testrac/datafile/undotbs1.263.618591197輸入資料檔案 fno=00004 name=+DISK/testrac/datafile/undotbs2.266.618591249輸入資料檔案 fno=00013 name=+DISK/testrac/datafile/lt_index_ts01.dbf輸入資料檔案 fno=00003 name=+DISK/testrac/datafile/sysaux.264.618591225通道 c2: 正在啟動段 1 於 16-5月 -07通道 c2: 已完成段 1 於 16-5月 -07段控制程式碼=3vihs9mp_1_1 標記=TAG20070516T132335 註釋=API Version 2.0,MMS Version 5.0.0.0通道 c2: 備份集已完成, 經過時間:01:21:46通道 c2: 啟動全部資料檔案備份集通道 c2: 正在指定備份集中的資料檔案備份集中包括當前控制檔案通道 c2: 正在啟動段 1 於 16-5月 -07通道 c2: 已完成段 1 於 16-5月 -07段控制程式碼=40ihseg3_1_1 標記=TAG20070516T132335 註釋=API Version 2.0,MMS Version 5.0.0.0通道 c2: 備份集已完成, 經過時間:00:00:56通道 c2: 啟動全部資料檔案備份集通道 c2: 正在指定備份集中的資料檔案在備份集中包含當前的 SPFILE通道 c2: 正在啟動段 1 於 16-5月 -07通道 c2: 已完成段 1 於 16-5月 -07段控制程式碼=41ihsehr_1_1 標記=TAG20070516T132335 註釋=API Version 2.0,MMS Version 5.0.0.0通道 c2: 備份集已完成, 經過時間:00:00:56通道 c1: 已完成段 1 於 16-5月 -07段控制程式碼=3uihs9mo_1_1 標記=TAG20070516T132335 註釋=API Version 2.0,MMS Version 5.0.0.0通道 c1: 備份集已完成, 經過時間:01:25:04完成 backup 於 16-5月 -07釋放的通道: c1釋放的通道: c2
RMAN> exit
恢復管理器完成。
$
對比上面三個不同的備份方式。如果在節點1上開啟一個channel,備份全庫大概需要1小時26分,如果採用兩個節點同時備份,那麼每個節點需要40多分鐘,大概45分鐘就可以備完全庫。最後,採用一個節點分配兩個channel來進行備份。由於前面已經修改了netbackup的設定,所以從圖形介面上觀察發現兩個驅動器同時在工作,可是令人疑惑的是,每個channel大概都花費了1小時20分鐘以上的時間,總共備份時間仍然達到了1小時25分鐘。這個效率和一個節點上啟動一個channel的效率是一樣的。
觀察netbackup的圖形介面發現,最後這種備份方式,每個驅動器的寫IO大概都是每秒6M左右,僅僅是前兩種方式速度的一半。
是什麼導致最後一種方式的IO效率減辦呢,仔細觀察後發現可能是網路因素造成的。由於上面的測試都是在Netbackup的客戶端節點進行,懷疑Netbackup首先需要將備份的資料透過區域網傳到Netbackup的伺服器端,然後透過光纖通道傳遞到帶庫。
簡單計算一下,如果一個節點上啟動兩個CHANNEL,每個CHANNEL的IO是6M,12M*8=96,已經解決100M網的上限了。
於是嘗試在Netbackup的伺服器端採用同樣的方法進行備份:
$ rman target /
恢復管理器: Release 10.2.0.3.0 - Production on 星期三 5月 16 14:54:53 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.
連線到目標資料庫: TESTRAC (DBID=4291216984)
RMAN> run
2> {
3> allocate channel c1 device type sbt;
4> allocate channel c2 device type sbt;
5> backup database;
6> }
使用目標資料庫控制檔案替代恢復目錄分配的通道: c1通道 c1: sid=302 例項=testrac2 devtype=SBT_TAPE通道c1: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)
分配的通道: c2通道 c2: sid=307 例項=testrac2 devtype=SBT_TAPE通道c2: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)
啟動 backup 於 16-5月 -07通道 c1: 啟動全部資料檔案備份集通道 c1: 正在指定備份集中的資料檔案輸入資料檔案 fno=00006 name=+DISK/testrac/datafile/zhejiang01.dbf輸入資料檔案 fno=00009 name=+DISK/testrac/datafile/zhejiang03.dbf輸入資料檔案 fno=00012 name=+DISK/testrac/datafile/zhejiang05.dbf輸入資料檔案 fno=00008 name=+DISK/testrac/datafile/ndmain01.dbf輸入資料檔案 fno=00010 name=+DISK/testrac/datafile/ndindex01.dbf輸入資料檔案 fno=00001 name=+DISK/testrac/datafile/system.262.618591167輸入資料檔案 fno=00005 name=+DISK/testrac/datafile/users.267.618591279通道 c1: 正在啟動段 1 於 16-5月 -07通道 c2: 啟動全部資料檔案備份集通道 c2: 正在指定備份集中的資料檔案輸入資料檔案 fno=00007 name=+DISK/testrac/datafile/zhejiang02.dbf輸入資料檔案 fno=00011 name=+DISK/testrac/datafile/zhejiang04.dbf輸入資料檔案 fno=00014 name=+DISK/testrac/datafile/zhejiang06.dbf輸入資料檔案 fno=00002 name=+DISK/testrac/datafile/undotbs1.263.618591197輸入資料檔案 fno=00004 name=+DISK/testrac/datafile/undotbs2.266.618591249輸入資料檔案 fno=00013 name=+DISK/testrac/datafile/lt_index_ts01.dbf輸入資料檔案 fno=00003 name=+DISK/testrac/datafile/sysaux.264.618591225通道 c2: 正在啟動段 1 於 16-5月 -07通道 c2: 已完成段 1 於 16-5月 -07段控制程式碼=43ihsf2l_1_1 標記=TAG20070516T145515 註釋=API Version 2.0,MMS Version 5.0.0.0通道 c2: 備份集已完成, 經過時間:00:39:35通道 c2: 啟動全部資料檔案備份集通道 c2: 正在指定備份集中的資料檔案備份集中包括當前控制檔案通道 c2: 正在啟動段 1 於 16-5月 -07通道 c1: 已完成段 1 於 16-5月 -07段控制程式碼=42ihsf2k_1_1 標記=TAG20070516T145515 註釋=API Version 2.0,MMS Version 5.0.0.0通道 c1: 備份集已完成, 經過時間:00:40:32通道 c1: 啟動全部資料檔案備份集通道 c1: 正在指定備份集中的資料檔案在備份集中包含當前的 SPFILE通道 c1: 正在啟動段 1 於 16-5月 -07通道 c2: 已完成段 1 於 16-5月 -07段控制程式碼=44ihshcs_1_1 標記=TAG20070516T145515 註釋=API Version 2.0,MMS Version 5.0.0.0通道 c2: 備份集已完成, 經過時間:00:00:58通道 c1: 已完成段 1 於 16-5月 -07段控制程式碼=45ihshek_1_1 標記=TAG20070516T145515 註釋=API Version 2.0,MMS Version 5.0.0.0通道 c1: 備份集已完成, 經過時間:00:01:07完成 backup 於 16-5月 -07釋放的通道: c1釋放的通道: c2
RMAN> exit
恢復管理器完成。
$
果然,這次的效率和兩個節點同時備份的效率一樣。都是僅用了40多分鐘就完成了備份操作。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4227/viewspace-69278/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- RMAN備份恢復效能優化優化
- rman 增量備份恢復
- RMAN備份恢復技巧
- ORACLE DG從庫 Rman備份恢復Oracle
- RMAN備份恢復典型案例——RMAN備份&系統變慢
- RMAN備份異機恢復
- RMAN備份與恢復測試
- 備份與恢復:polardb資料庫備份與恢復資料庫
- Oracle 備份恢復篇之RMAN catalogOracle
- rman備份異機恢復(原創)
- RMAN備份恢復典型案例——資料庫卡頓資料庫
- 12 使用RMAN備份和恢復檔案
- RMAN備份恢復典型案例——ORA-00245
- RAC備份恢復之Voting備份與恢復
- RMAN備份恢復典型案例——異機恢復未知DBID
- SqlServer備份和恢復(二)SQLServer
- 資料庫備份恢復資料庫
- Windows oracle 11g rman備份恢復到linux系統WindowsOracleLinux
- 備份恢復Lesson 04.Using the RMAN Recovery Catalog
- 在DG備庫備份資料庫並恢復到一個主機上,報錯RMAN-06820資料庫
- ORACLE備份&恢復案例二(轉)Oracle
- MySQL備份與恢復——基於Xtrabackup物理備份恢復MySql
- 【RMAN】在多租戶環境下的RMAN備份及恢復
- Mysql備份與恢復(1)---物理備份MySql
- mydumper備份恢復
- Mysql備份恢復MySql
- 備份和恢復
- GitLab的自動備份、清理備份與恢復Gitlab
- 透過RMAN備份standby database成功恢復還原Database
- dg丟失歸檔,使用rman增量備份恢復
- Mysql備份與恢復(2)---邏輯備份MySql
- 【RMAN】Oracle12c以後rman 備份恢復命令參考Oracle
- MySQL入門--備份與恢復(二)MySql
- 使用RMAN備份資料庫資料庫
- PostgreSql資料庫的備份和恢復SQL資料庫
- 詳解叢集級備份恢復:物理細粒度備份恢復
- MySQL備份與恢復——基於MyDumper/MyLoader 邏輯備份恢復MySql
- RMAN的備份原理
- 利用innobackupex備份集恢復指定庫