當前位置:
首頁 > 知識 > Oracle RAC 11g DG Broker配置和測試

Oracle RAC 11g DG Broker配置和測試

本篇在實驗環境中實際配置

環境:RHEL 6.5 + Oracle 11.2.0.4 GI、DB + Primary RAC(2 nodes)+ Standby RAC(2 nodes)

配置並測試DG Broker步驟:

  • 1.停止MRP
  • 2.修改 Listener.ora 文件
  • 3.修改參數文件
  • 4.創建配置
  • 5.啟用配置
  • 6.切換測試

1.停止MRP

在備庫停止MRP:

alter database recover managed standby database cancel;

2.修改 Listener.ora 文件

在各個節點grid用戶的監聽文件中,

[grid@jyrac1 ~]$ cd $ORACLE_HOME/network/admin
[grid@jyrac1 admin]$ vi listener.ora

分別增加以下內容:

--Primary Node1
SID_LIST_LISTENER=(SID_LIST=(SID_DESC=(SID_NAME=jyzhao1)(GLOBAL_DBNAME=jyzhao_dgmgrl)(ORACLE_HOME=/opt/app/oracle/product/11.2.0/dbhome_1)))

--Primary Node2

SID_LIST_LISTENER=(SID_LIST=(SID_DESC=(SID_NAME=jyzhao2)(GLOBAL_DBNAME=jyzhao_dgmgrl)(ORACLE_HOME=/opt/app/oracle/product/11.2.0/dbhome_1)))

--Standby Node1

SID_LIST_LISTENER=(SID_LIST=(SID_DESC=(SID_NAME=jyzhao1)(GLOBAL_DBNAME=mynas_dgmgrl)(ORACLE_HOME=/opt/app/oracle/product/11.2.0/dbhome_1)))

--Standby Node2

SID_LIST_LISTENER=(SID_LIST=(SID_DESC=(SID_NAME=jyzhao2)(GLOBAL_DBNAME=mynas_dgmgrl)(ORACLE_HOME=/opt/app/oracle/product/11.2.0/dbhome_1)))

註:因為我這裡的環境之前沒有配置其他的靜態監聽,而且默認使用的監聽名字是LISTENER,所以,只需要直接添加這一行配置即可。 添加完畢後分別在各節點重新啟動監聽:

--@all nodes
lsnrctl stop
lsnrctl start

3.修改參數文件

檢查當前DG_BROKER_CONFIG_FILE和dg_broker_start配置:

--ON Primary:

SYS@jyzhao1 >show parameter dg_broker

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
dg_broker_config_file1 string /opt/app/oracle/product/11.2.0
/dbhome_1/dbs/dr1jyzhao.dat
dg_broker_config_file2 string /opt/app/oracle/product/11.2.0
/dbhome_1/dbs/dr2jyzhao.dat
dg_broker_start boolean FALSE

--ON Standby:

SQL> show parameter dg_broker

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
dg_broker_config_file1 string /opt/app/oracle/product/11.2.0
/dbhome_1/dbs/dr1mynas.dat
dg_broker_config_file2 string /opt/app/oracle/product/11.2.0
/dbhome_1/dbs/dr2mynas.dat
dg_broker_start boolean FALSE

需要把DG Broker配置文件的默認路徑修改到ASM磁碟上,並將dg_broker_start修改為TRUE,具體操作如下:

--ON Primary:
ASMCMD>
mkdir +fra1/jyzhao/DATAGUARDCONFIG
mkdir +data1/jyzhao/DATAGUARDCONFIG

SQL>
ALTER SYSTEM SET DG_BROKER_CONFIG_FILE1="+fra1/jyzhao/DATAGUARDCONFIG/dgb_config1.ora" SCOPE=BOTH sid="*";
ALTER SYSTEM SET DG_BROKER_CONFIG_FILE2="+data1/jyzhao/DATAGUARDCONFIG/dgb_config2.ora" SCOPE=BOTH sid="*";
alter system set dg_broker_start=true scope=both sid="*";
show parameter dg_broker

--ON Standby:
ASMCMD>
mkdir +fra/mynas/DATAGUARDCONFIG
mkdir +data/mynas/DATAGUARDCONFIG

SQL>
ALTER SYSTEM SET DG_BROKER_CONFIG_FILE1="+fra/mynas/DATAGUARDCONFIG/dgb_config1.ora" SCOPE=BOTH sid="*";
ALTER SYSTEM SET DG_BROKER_CONFIG_FILE2="+data/mynas/DATAGUARDCONFIG/dgb_config2.ora" SCOPE=BOTH sid="*";
alter system set dg_broker_start=true scope=both sid="*";
show parameter dg_broker

此時,主備庫的alert告警日誌中都會有啟動DG Broker的信息:

Sun Aug 13 16:45:27 2017
DMON started with pid=41, OS id=7432
Starting Data Guard Broker (DMON)
Sun Aug 13 16:45:49 2017
INSV started with pid=54, OS id=7459

4.創建配置

dgmgrl sys/oracle 在dgmgrl下創建配置:

CREATE CONFIGURATION "jydb" AS PRIMARY DATABASE IS "jyzhao" CONNECT IDENTIFIER IS "jyzhao";
ADD DATABASE "mynas" AS CONNECT IDENTIFIER IS "mynas";

實際操作如下:

DGMGRL> CREATE CONFIGURATION "jydb" AS PRIMARY DATABASE IS "jyzhao" CONNECT IDENTIFIER IS "jyzhao";
Configuration "jydb" created with primary database "jyzhao"

DGMGRL> ADD DATABASE "mynas" AS CONNECT IDENTIFIER IS "mynas";
Database "mynas" added

5.啟用配置

在dgmgrl下啟用配置,查看配置:

enable configuration;
show configuration;
show database verbose jyzhao

實際操作如下:

DGMGRL> enable configuration;
Enabled.

DGMGRL> show configuration;

Configuration - jydb

Protection Mode: MaxPerformance
Databases:
jyzhao - Primary database
mynas - Physical standby database

Fast-Start Failover: DISABLED

Configuration Status:
SUCCESS

DGMGRL> show database verbose jyzhao

Database - jyzhao

Role: PRIMARY
Intended State: TRANSPORT-ON
Instance(s):
jyzhao1
jyzhao2

Properties:
DGConnectIdentifier = "jyzhao"
ObserverConnectIdentifier = ""
LogXptMode = "ASYNC"
DelayMins = "0"
Binding = "optional"
MaxFailure = "0"
MaxConnections = "1"
ReopenSecs = "300"
NetTimeout = "30"
RedoCompression = "DISABLE"
LogShipping = "ON"
PreferredApplyInstance = ""
ApplyInstanceTimeout = "0"
ApplyParallel = "AUTO"
StandbyFileManagement = "AUTO"
ArchiveLagTarget = "0"
LogArchiveMaxProcesses = "4"
LogArchiveMinSucceedDest = "1"
DbFileNameConvert = "+data/mynas, +data1/jyzhao"
LogFileNameConvert = "+data/mynas, +data1/jyzhao, +fra/mynas, +fra1/jyzhao"
FastStartFailoverTarget = ""
InconsistentProperties = "(monitor)"
InconsistentLogXptProps = "(monitor)"
SendQEntries = "(monitor)"
LogXptStatus = "(monitor)"
RecvQEntries = "(monitor)"
ApplyLagThreshold = "0"
TransportLagThreshold = "0"
TransportDisconnectedThreshold = "30"
SidName(*)
StaticConnectIdentifier(*)
StandbyArchiveLocation(*)
AlternateLocation(*)
LogArchiveTrace(*)
LogArchiveFormat(*)
TopWaitEvents(*)
(*) - Please check specific instance for the property value

Database Status:
SUCCESS

DGMGRL>

附一些常用的命令匯總:

show configuration;
show database jyzhao;
show database mynas;
show database verbose jyzhao;
show database verbose mynas;
show instance verbose jyzhao1 on database jyzhao;
show instance verbose jyzhao2 on database jyzhao;
show instance verbose jyzhao1 on database mynas;
show instance verbose jyzhao2 on database mynas;

這些常用命令的輸出結果大家可以在自己的實驗環境測試一下,我這裡就不贅述了。


6.切換測試

我們配置DG Broker主要就是為了方便切換,在配置正確的環境中,只需要一條命令就可以switchover成功。 在dgmgrl下切換測試:

--一條命令完成switchover主備切換:
switchover to mynas;

--一條命令完成switchover主備切回:
switchover to jyzhao;

來看看實際DG Broker的強大功能,以主備切換為例:

[oracle@jyrac1 ~]$ dgmgrl sys/oracle
DGMGRL for Linux: Version 11.2.0.4.0 - 64bit Production

Copyright (c) 2000, 2009, Oracle. All rights reserved.

Welcome to DGMGRL, type "help" for information.
Connected.
DGMGRL> switchover to mynas;
Performing switchover NOW, please wait...
Operation requires a connection to instance "jyzhao2" on database "mynas"
Connecting to instance "jyzhao2"...
Connected.
New primary database "mynas" is opening...
Operation requires startup of instance "jyzhao1" on database "jyzhao"
Starting instance "jyzhao1"...
ORACLE instance started.
Database mounted.
Database opened.
Switchover succeeded, new primary is "mynas"

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 科技優家 的精彩文章:

mysql存儲過程詳細講解及完整實例下載
資料庫分庫分表中間件 Sharding-JDBC 源碼分析 —— SQL 解析(四)之插入SQL
20 條實用的 git 命令
如何通過binlog獲取我們想要的MySql語句?
js數組去重方法分析與總結

TAG:科技優家 |

您可能感興趣

15寸MacBook Pro頂配發布新配置:AMD Vega Pro顯卡上市
三星Galaxy Note 9與蘋果iPhone X Plus配置匯總
索尼Xperia XZ3 Premium配置曝光 預裝Android P
新MacBook Pro配置升級:頂配要用Intel i9
MacBook Pro/Air和Mac mini升級配置小調價
配置SAP Solution Manager連接監控遠程Microsoft SQL Server
Windows Server 2003安裝IIS服務並配置WEB站點
VMware Horizon View Real-Time Audio-Video 相關配置
iPhone XI Max配置類似華為P20 Pro?
Caffe安裝及配置Python介面(CentOS7)
Servlet+MyBatis項目轉Spring Cloud微服務,多數據配置修改建議
Mate20 Pro對比iPhoneXSMax:華為配置更強
直接對比iPhone X Plus?三星Galaxy Note 9 配置曝光
Cisco Packet Tracer中配置單臂路由
Spring SpringMVC配置Druid數據源(資料庫連接池)
SpringBoot中如何進行Bean配置
Eclipse Debug 配置
windows7下配置caffe+matlab2016 無GPU
CentOS7下配置Nginx
SpringCloud統一配置中心Config Client