DGMGRL> disable FAST_START FAILOVER; Disabled. DGMGRL> SHOW CONFIGURATION;
sys@LIMING> show parameter dg_broker_config_file
NAME TYPE VALUE
dg_broker_config_file1 string /u01/app/oracle/product/11.2.0 /db_1/dbs/dr1LIMING.dat dg_broker_config_file2 string /u01/app/oracle/product/11.2.0 /db_1/dbs/dr2LIMING.dat
rm dr1LIMING.dat rm dr2LIMING.dat
dgmgrl sys/passwd@DB_LIMING
CREATE CONFIGURATION ‘PRODCONF’ AS PRIMARY DATABASE IS ‘LIMING’ CONNECT IDENTIFIER IS DG_LIMING;
ADD DATABASE ‘LMSTD’ AS CONNECT IDENTIFIER IS DG_LMSTD MAINTAINED AS PHYSICAL;
这里的参数要说明一下.add database ‘LMSTD′ ,这儿的LMSTD是指database的db_unique_name,而AS CONNECT IDENTIFIER IS DG_LMSTD 这里的LMSTD是指tnsname.ora连接到standby database的net service name.
ENABLE CONFIGURATION;
SHOW CONFIGURATION;
DGMGRL> edit database ‘LIMING’ set property ‘logxptmode’=‘sync’;
Property “logxptmode” updated
DGMGRL> edit database ‘LMSTD’ set property ‘logxptmode’=‘sync’;
DGMGRL> edit configuration set protection mode as maxavailability;
DGMGRL> enable fast_start failover;
DGMGRL> show database verbose “LMSTD”
Database - LMSTD
Role: PHYSICAL STANDBY Intended State: APPLY-ON Transport Lag: 0 seconds Apply Lag: 0 seconds Real Time Query: OFF Instance(s): LMSTD
Database Warning(s): ORA-16819: fast-start failover observer not started
可是我们发现DGMGRL告警了,那是因为我们没有启动观察器(observer)的原因
解决:官方文档摘录
How to run Observer process as a background process (文档 ID 1084681.1)
start the dgmgrl process with nohup command, eg:#!/bin/ksh
Script to start observer via DGMGRL
nohup dgmgrl -logfile /tmp/dgmgrl.log <<eof connect sys/passwd@connect_string start observer EOF
chmod +x observer.sh
./observer.sh &
From 11.2 onwards, one can use the following command to start observer:
% dgmgrl -logfile /tmp/observer.log sys/idPocRiuZZK4a1G@DB_LIMING “start observer” &
tns配置信息 DG_LIMING= (DESCRIPTION= (ADDRESS=(PROTOCOL=TCP)(HOST=dbserver12)(PORT=1521)) (CONNECT_DATA= (SERVER=DEDICATED) (SERVICE_NAME=LIMING.LK) ) ) DG_LMSTD= (DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP)(HOST=dbserver13)(PORT=1521)) ) (CONNECT_DATA= (SERVER=DEDICATED) (SERVICE_NAME=LMSTD.LK) ) )