Oracle 11g DG配置簡明版


環境:
主庫A機:在線生產環境,RHEL 6.4 + Oracle 11.2.0.3
備庫B機:新增備機,RHEL 6.4
需求:
對生產環境最小影響前提下配置DG備庫。
目錄:
一、B機安裝相同版本Oracle軟件
二、A機,B機配置網絡連接

三、配置主庫A機,需要重啟A機數據庫
四、duplicate主庫到備機

五、日常運維

一、B機安裝相同版本Oracle軟件

只需要安裝相同版本的Oracle軟件,配置環境變量,不需要建庫。 參考:《[Linux平台oracle 11g單實例 安裝部署配置 快速參考](http://www.cnblogs.com/jyzhao/p/3891769.html)》 部分內容。

二、A機,B機配置網絡連接

2.1 配置listener.ora

### 2.1.1 A機配置listener.ora ### 新增下面靜態注冊內容,然后`lsnrctl reload`重載監聽,這樣重載不會影響到現有業務:
SID_LIST_LISTENER =
   (SID_LIST =
        (SID_DESC =
          (GLOBAL_DBNAME = jingyu)
          (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
          (SID_NAME = jingyu)   
        )   
        (SID_DESC =     
          (GLOBAL_DBNAME = jingyu_dgmgrl)     
          (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)     
          (SID_NAME = jingyu)
        ) 
    )

2.1.2 B機配置listener.ora

加入下面靜態注冊內容:

SID_LIST_LISTENER =
   (SID_LIST =
        (SID_DESC =
          (GLOBAL_DBNAME = jingyu_s)
          (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
          (SID_NAME = jingyu_s)   
        )   
        (SID_DESC =     
          (GLOBAL_DBNAME = jingyu_s_dgmgrl)     
          (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)     
          (SID_NAME = jingyu_s)
        ) 
    ) 

2.2 配置tnsnames.ora

A機、B機都配置tnsnames.ora,添加以下內容:
jingyu =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.99.180)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = jingyu)
    )
  )

jingyu_s =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.99.183)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = jingyu_s)
    )
  )

2.3 生成密碼文件

A機生成密碼文件:
orapwd file=$ORACLE_HOME/dbs/orapwjingyu password=oracle entries=10 ignorecase=Y

B機生成密碼文件:

orapwd file=$ORACLE_HOME/dbs/orapwjingyu_s password=oracle entries=10 ignorecase=Y

測試在A機連接到B機正常聯通:
首先確定已經關閉防火牆和SELinux。

sqlplus sys/oracle@jingyu_s as sysdba

三、配置主庫A機,需要重啟A機數據庫

添加standby logfile, 如果原來有三組聯機日志,那么添加4組standby日志。 A機確定以下目錄存在且賦予正確權限: 歸檔日志文件存放目錄:/u01/app/oracle/arch
--設置數據庫為force logging
alter database force logging;
--設置db_unique_name, log_archive_config(這里主庫的db_unique_name,出於對現有的生產環境最小影響考慮沒有改)
alter system set db_unique_name='jingyu' scope=spfile;  
alter system set log_archive_config='DG_CONFIG=(jingyu,jingyu_s)'; 
--歸檔日志目錄
alter system set log_archive_dest_1='LOCATION=/u01/app/oracle/arch VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=jingyu';
alter system set log_archive_dest_2='SERVICE=jingyu_s ASYNC LGWR VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=jingyu_s';
--歸檔日志文件命名規則
alter system set log_archive_format='arch_%r_%t_%s.arc' scope=spfile;
--DG的fal_server和fal_client
alter system set fal_server=jingyu_s;
alter system set fal_client=jingyu;
--設置standby_file_management為自動
alter system set standby_file_management=AUTO; 
--設置備庫日志文件組,數量一般為目標庫日志文件組+1
alter database add standby logfile group 11 size 52428800; 
alter database add standby logfile group 12 size 52428800; 
alter database add standby logfile group 13 size 52428800; 
alter database add standby logfile group 14 size 52428800; 

四、duplicate主庫到備機

4.1 B機確定以下目錄存在且賦予正確權限

歸檔日志文件存放目錄:/u01/app/oracle/arch 審計文件目錄:/u01/app/oracle/admin/jingyu_s/adump 數據文件目錄:/usr2/oracle/oradata

4.2 B機數據庫啟動到nomount模式

參數文件initjingyu_s.ora
echo "db_name=jingyu_s" > /tmp/initjingyu_s.ora

啟動到nomount狀態

startup nomount pfile='/tmp/initjingyu_s.ora';

4.3 A機登錄,復制數據庫到B機

duplicate命令
rman target / auxiliary sys/oracle@jingyu_s cmdfile=duplicate_standby.sql

vi duplicate_standby.sql

duplicate target database
for standby
from active database
DORECOVER
spfile
set db_unique_name='jingyu_s'
set audit_file_dest='/u01/app/oracle/admin/jingyu_s/adump'
set db_create_file_dest='/usr2/oracle/oradata'
--set control_files='/usr2/oracle/oradata/jingyu_s/control01.ctl','/u01/app/oracle/fast_recovery_area/jingyu_s/control02.ctl'
set log_archive_dest_1='location=/u01/app/oracle/arch VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=jingyu_s'
set log_archive_dest_2='SERVICE=jingyu ASYNC LGWR VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=jingyu'
set standby_file_management='AUTO'
set fal_server='jingyu'
set fal_client='jingyu_s'
set memory_target='0'
set sga_target='1024M';

五、日常運維

5.1 日常管理維護

參考:

5.2 備份策略

參考:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM