Oracle10g RAC環境下 DataGuard備庫搭建例項-1-eygle

season0891發表於2010-06-13

為一個RAC搭 建standby和單節點搭建方法基本一致,我們可以把RAC看成是一個單節點的資料庫,只需要保 證所有節點的日誌能傳送到備庫即可。

 


一、 在備庫伺服器安裝ORACLE軟體

只安裝軟體,不要建立資料庫。ORACLE軟體版本和主庫保持一致。

 

二、修改主庫參 數

節點1執行:

SQL> show parameter spfile

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

spfile string /dev/raw/raw14

 

節點2執行:

SQL> show parameter spfile

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

spfile string /dev/raw/raw14

可見,在本例中,RAC各 節點共用一個spfile,所以,我們修改引數時,可以只需在一個節點下修改就可以了。

 

--2.1 強制資料庫LOGGING

SQL> ALTER DATABASE FORCE LOGGING;

Database altered.

--2.2 修改DATAGUARD相關引數

SQL> ALTER SYSTEM SET DB_UNIQUE_NAME=primary scope=spfile;

SQL> ALTER SYSTEM SET LOG_ARCHIVE_CONFIG='DG_CONFIG=(primary,standby)' scope=spfile;

SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_1='LOCATION=/soft/archivelog/ VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=primary' scope=spfile;

SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_2='SERVICE=standby LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=standby' scope=spfile;

SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_1=ENABLE scope=spfile;

SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2=ENABLE scope=spfile;

SQL> ALTER SYSTEM SET REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE scope=spfile;

SQL> ALTER SYSTEM SET LOG_ARCHIVE_FORMAT='%t_%s_%r.arc' scope=spfile;

SQL> ALTER SYSTEM SET LOG_ARCHIVE_MAX_PROCESSES=4 scope=spfile;

SQL> ALTER SYSTEM SET COMPATIBLE = '10.2.0.3' scope=spfile;

 

--以下幾個引數是為了SWITCH OVER用的,是可選引數。

--但是為了以後可能發生的SWITCH OVER更方便,應該養成設定這些引數的習慣

--在本 文測試環境下,由於主庫和備庫路徑不一致,所以要設定路徑轉換引數。(可選,switch over用)

SQL> ALTER SYSTEM SET FAL_CLIENT = PRIMARY SCOPE=SPFILE;

SQL> ALTER SYSTEM SET FAL_SERVER = STANDBY SCOPE=SPFILE;

SQL> ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT =AUTO SCOPE=SPFILE;

 

SQL> ALTER SYSTEM SET DB_FILE_NAME_CONVERT='/soft/oradata/rac/','/dev/raw/' SCOPE=SPFILE;

SQL> ALTER SYSTEM SET LOG_FILE_NAME_CONVERT='/soft/oradata/rac/','/dev/raw/' SCOPE=SPFILE;

 

2.3、在主庫新增指向備庫的tnsname

在主庫的tnsnames.ora新增如下內容:

STANDBY =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST =200.200.200.123)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

來源:(http://blog.sina.com.cn/s/blog_5ded2e5b0100f444.html) - Oracle10g RAC環境下DataGuard備庫搭建例項-1-eygle_伊帆_新浪部落格

(SERVICE_NAME = standby)

)

 

三、修改主庫為 歸檔模式

3.1--關閉所有例項

--注意:修改以上引數後,必須把所有例項都關閉。否則在啟動例項的時候可能會導致錯誤:

--ORA-00600: internal error code, arguments: [kccsbck_first], [2], [2241198041],

[], [], [], [], []

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

3.2、修改為歸檔模式

 --關閉所有節點

SQL> shutdown immediate

 

 

 --在其中一個節點啟用歸檔

 

SQL> startup mount

 

 

SQL> alter database archivelog;

 

SQL> alter database open;

10GR2以前,在RAC環境下修改歸檔必須先把設定引數cluster_database=false, 把資料庫設定為歸檔後再把該引數設定為true,但這個步驟在10GR2可以省略。

 

 

 

四、備份資料庫

 

4.1、備份資料庫

備份操作在節點1(rac1)上執行。

 

由於歸檔在不同 的節點下,故要連線所有節點進行備份:

[oracle@rac1 ~]$ $ORACLE_HOME/bin/rman target /

Recovery Manager: Release 10.2.0.3.0 - Production on Wed Apr 30 14:48:23 2008

Copyright (c) 1982, 2005, Oracle. All rights reserved.

connected to target database: RAC (DBID=2232067446)

RMAN> run

2> {

3> allocate channel c1 device type disk format '/soft/backup/%U' connect sys/test@rac1;

4> allocate channel c2 device type disk format '/soft/backup/%U' connect sys/test@rac2;

5> backup database plus archivelog delete all input;

6> }

 

4.2、生成備庫控制檔案

RMAN> run

2> {

3> allocate channel c1 device type disk format '/soft/backup/CON_%U';

4> backup current controlfile for standby;

5> }

 

為 一個RAC搭建standby和單節點搭建方法基本一致,我們可以把RAC看 成是一個單節點的資料庫,

只需要保證所有 節點的日誌能傳送到備庫即可。

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

相關文章