使用OSB進行ORACLE rac資料庫的備份
1 ORACLE RAC資料庫備份概述
ORACLE資料庫備份支援disk和tape兩種型別,disk方式使用format指定備份的目錄,而使用tape型別,則需要第三方備份軟體或者採用ORACLE的OSB備份軟體來提供sbt備份儲存型別的支援。
本文主要講述OSB進行ORACLE資料庫RAC的備份設定,該備份軟體的具體設定,比如帶庫和帶機的設定在此不做詳細述說,如果備份伺服器端配置好了後,只需要使用RMAN指令碼,將裝置改成type sbt方式備份即可,所有的schedule定製都需要再ORACLE ENTERPRISE MANAGER介面上完成。
1.1 備份伺服器端的設定
1. RMAN訪問帶庫的設定
ORACLE 11g的database中,已經整合了OSB的相關軟體,所以以前的libobk.so符號連結不需要再做了。
OSB只要在資料庫伺服器上安裝client端即可,在setup的時候只選擇C選項。
2. RMAN使用者的設定
在OSB web管理介面上選擇configure的users中,一般選擇ORACLE使用者,點選EDIT,將rman和cmdline兩項賦予oracle使用者即可。同樣可以使用obtool命令來建立,示例如下:
mkuser -c oracle -p oracle -U oracle -G dba -N no -h *:*:*+rman+cmdline oracle
3. 建立MF(media family)
該步驟如果沒有手工建立media family,那麼rman備份的時候會自動預設使用rman-default的MF,建議建立自己的一個MF。
完成以上的步驟後,即可使用rman的指令碼進行資料庫的備份測試了,
4. 建立備份指令碼
#!/bin/sh
ORAHOME=/opt/oracle/app/oracle/product/11g/db
ORAOWNER=oracle
dt=`date +%m%d`
rman target / >> /export/home/oracle/db_level0_$dt.log << EOF
run{
allocate channel ch1 type sbt;
allocate channel ch2 type sbt;
backup incremental level 0 database;
sql 'alter system archive log current';
release channel ch1;
release channel ch2;
}
run
{
allocate channel ch1 type sbt connect sys/Shyzy123@SPZXDB1;
allocate channel ch2 type sbt connect sys/Shyzy123@SPZXDB2;
backup archivelog all;
crosscheck backup;
delete noprompt obsolete;
delete noprompt expired backup;
release channel ch2;
release channel ch1;
}
EOF
以上指令碼已經透過測試,下面對指令碼稍加說明:
a. RAC的備份只要在一個節點上進行指令碼的執行就可以了,因為,RAC環境中,資料庫資料都是存放在在儲存上的,比如使用了ASM或者CLUSTER File System等方式進行存放。
b. 透過OSB備份軟體,只需要指定備份型別為sbt即可,OSB的程式能夠知道去哪兒找到帶庫,並mount相應的磁帶。
c. 如果RAC的歸檔日誌存放在不同的節點上話,如果需要備份這些日誌,以及備份好這些日誌刪除的話,由於只在一個節點上進行備份,這樣指令碼就有可能存在許可權問題,解決方法就是分別connect對應的例項,使用rman的configure命令。
d. 在執行指令碼節點的tnsnames.ora檔案中加入各個節點例項名的解析,比如inst1,inst2,需要注意的地方是,service?_name一定都要用RAC的service_name。
5. 備份策略的制定
備份策略可以按照0級備份和增量1級和2級的備份來制定靈活的備份方案policy,所涉及到的備份策略可以透過OEM管理軟體來進行設定和定製,也可以透過以上的備份指令碼,進行crontab的制定。
ORACLE資料庫備份支援disk和tape兩種型別,disk方式使用format指定備份的目錄,而使用tape型別,則需要第三方備份軟體或者採用ORACLE的OSB備份軟體來提供sbt備份儲存型別的支援。
本文主要講述OSB進行ORACLE資料庫RAC的備份設定,該備份軟體的具體設定,比如帶庫和帶機的設定在此不做詳細述說,如果備份伺服器端配置好了後,只需要使用RMAN指令碼,將裝置改成type sbt方式備份即可,所有的schedule定製都需要再ORACLE ENTERPRISE MANAGER介面上完成。
1.1 備份伺服器端的設定
1. RMAN訪問帶庫的設定
ORACLE 11g的database中,已經整合了OSB的相關軟體,所以以前的libobk.so符號連結不需要再做了。
OSB只要在資料庫伺服器上安裝client端即可,在setup的時候只選擇C選項。
2. RMAN使用者的設定
在OSB web管理介面上選擇configure的users中,一般選擇ORACLE使用者,點選EDIT,將rman和cmdline兩項賦予oracle使用者即可。同樣可以使用obtool命令來建立,示例如下:
mkuser -c oracle -p oracle -U oracle -G dba -N no -h *:*:*+rman+cmdline oracle
3. 建立MF(media family)
該步驟如果沒有手工建立media family,那麼rman備份的時候會自動預設使用rman-default的MF,建議建立自己的一個MF。
完成以上的步驟後,即可使用rman的指令碼進行資料庫的備份測試了,
4. 建立備份指令碼
#!/bin/sh
ORAHOME=/opt/oracle/app/oracle/product/11g/db
ORAOWNER=oracle
dt=`date +%m%d`
rman target / >> /export/home/oracle/db_level0_$dt.log << EOF
run{
allocate channel ch1 type sbt;
allocate channel ch2 type sbt;
backup incremental level 0 database;
sql 'alter system archive log current';
release channel ch1;
release channel ch2;
}
run
{
allocate channel ch1 type sbt connect sys/Shyzy123@SPZXDB1;
allocate channel ch2 type sbt connect sys/Shyzy123@SPZXDB2;
backup archivelog all;
crosscheck backup;
delete noprompt obsolete;
delete noprompt expired backup;
release channel ch2;
release channel ch1;
}
EOF
以上指令碼已經透過測試,下面對指令碼稍加說明:
a. RAC的備份只要在一個節點上進行指令碼的執行就可以了,因為,RAC環境中,資料庫資料都是存放在在儲存上的,比如使用了ASM或者CLUSTER File System等方式進行存放。
b. 透過OSB備份軟體,只需要指定備份型別為sbt即可,OSB的程式能夠知道去哪兒找到帶庫,並mount相應的磁帶。
c. 如果RAC的歸檔日誌存放在不同的節點上話,如果需要備份這些日誌,以及備份好這些日誌刪除的話,由於只在一個節點上進行備份,這樣指令碼就有可能存在許可權問題,解決方法就是分別connect對應的例項,使用rman的configure命令。
d. 在執行指令碼節點的tnsnames.ora檔案中加入各個節點例項名的解析,比如inst1,inst2,需要注意的地方是,service?_name一定都要用RAC的service_name。
5. 備份策略的制定
備份策略可以按照0級備份和增量1級和2級的備份來制定靈活的備份方案policy,所涉及到的備份策略可以透過OEM管理軟體來進行設定和定製,也可以透過以上的備份指令碼,進行crontab的制定。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29874640/viewspace-1332536/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用MySQL Workbench進行資料庫備份MySql資料庫
- Aix下使用rman備份Oracle RAC資料庫(轉)AIOracle資料庫
- 使用 xtrabackup 進行MySQL資料庫物理備份MySql資料庫
- 如何利用Rman對Oracle資料庫進行備份Oracle資料庫
- ORACLE RAC資料庫的備份與恢復(6)Oracle資料庫
- ORACLE RAC資料庫的備份與恢復(5)Oracle資料庫
- ORACLE RAC資料庫的備份與恢復(4)Oracle資料庫
- ORACLE RAC資料庫的備份與恢復(3)Oracle資料庫
- ORACLE RAC資料庫的備份與恢復(2)Oracle資料庫
- ORACLE RAC資料庫的備份與恢復(1)Oracle資料庫
- 使用離線工具dmbackup進行資料庫備份資料庫
- 使用mysqldump進行mysql資料庫備份還原MySql資料庫
- Elasticsearch 使用 NFS 進行資料備份ElasticsearchNFS
- Oracle資料庫的備份方法-冷備份(轉)Oracle資料庫
- RMAN備份恢復——RAC環境資料庫的備份(zt)資料庫
- RMAN備份恢復--RAC環境資料庫的備份(十)資料庫
- RMAN備份恢復——RAC環境資料庫的備份(一)資料庫
- oracle資料庫使用rman備份指令碼Oracle資料庫指令碼
- mysqldump 進行資料備份MySql
- oracle資料庫備份之exp增量備份Oracle資料庫
- 【RAC】rac環境下的資料庫備份與還原資料庫
- oracle 備份資料庫,匯出資料庫Oracle資料庫
- 簡單的使用rman備份oracle資料庫的做法Oracle資料庫
- 使用冷備份與冷備份後的資料庫歸檔日誌檔案進行資料庫不完整恢復資料庫
- 使用資料庫冷備份方式進行資料庫遷移,資料庫檔案遷移到不同的目錄資料庫
- 「Oracle」Oracle 資料庫備份還原Oracle資料庫
- mssql資料庫異地進行異地備份的方法SQL資料庫
- RAC環境利用備份恢復RAC資料庫(五)資料庫
- RAC環境利用備份恢復RAC資料庫(四)資料庫
- RAC環境利用備份恢復RAC資料庫(三)資料庫
- RAC環境利用備份恢復RAC資料庫(二)資料庫
- RAC環境利用備份恢復RAC資料庫(一)資料庫
- RAC環境的STANDBY資料庫備份報錯資料庫
- Oracle學習系列—資料庫備份—熱備份Oracle資料庫
- 使用RMAN備份資料庫資料庫
- oracle rac 備份Oracle
- 2 Day DBA-管理方案物件-執行備份和恢復-備份資料庫-使用Oracle建議的備份策略物件資料庫Oracle
- 自動備份Oracle資料庫Oracle資料庫