Oracle Database - Enterprise Edition - Version 10.1.0.2 to 12.1.0.2 [Release 10.1 to 12.1]
PURPOSE
Physical standby database is managed by the broker.
After a successful failover with Dataguard Broker (dgmgrl) to a physical standby database
"dgmgrl > show configuration" returns ORA-16661 and other messages:
DGMGRL> show configuration;
Configuration - physDG112
Protection Mode: MaxPerformance
Databases:
db112 - Primary database
stdb112 - Physical standby database
Fast-Start Failover: DISABLED
Configuration Status:
SUCCESS
DGMGRL> failover to stdb112;
Performing failover NOW, please wait...
Failover succeeded, new primary is "stdb112"
DGMGRL> show configuration;
Configuration - physDG112
Protection Mode: MaxPerformance
Databases:
stdb112 - Primary database
db112 - Physical standby database (disabled)
ORA-16661: the standby database needs to be reinstated
Fast-Start Failover: DISABLED
Configuration Status:
SUCCESS
DGMGRL> reinstate database db112
Reinstating database "db112", please wait...
Error: ORA-16653: failed to reinstate database
Failed.
Reinstatement of database "db112" failed
-> ORA- 16653 at first attempt to re-instate database
DGMGRL> reinstate database db112
Reinstating database "db112", please wait...
Error: ORA-16795: the standby database needs to be re-created
Failed.
Reinstatement of database "db112" failed
-> ORA-16795 at 2nd attempt to re-instate database
TROUBLESHOOTING STEPS
DGMGRL> reinstate database xxx;
returns different errors: ORA-16653/ORA-16795.
The cause of this errors are recorded within the drc*.log-file:
2010-07-27 11:13:08.515 INSV: Received message for inter-instance publication
2010-07-27 11:13:08.531 req ID 1.1.563625824, opcode CTL_REINST_ENABLE, phase RESYNCH, flags 5
2010-07-27 11:13:08.531 02001000 563625824 DMON: dispersing message to standbys for REINST_ENABLE phase RESYNCH
2010-07-27 11:13:08.531 INSV: Reply received for message with
2010-07-27 11:13:08.531 req ID 1.1.563625824, opcode CTL_REINST_ENABLE, phase RESYNCH
2010-07-27 11:13:08.531 02001000 563625824 DMON: Instance ID 1 returned ORA-16827
2010-07-27 11:13:08.531 02001000 563625824 for phase RESYNCH of op CTL_REINST_ENABLE.
2010-07-27 11:13:08.531 02001000 563625824 Operation CTL_REINST_ENABLE canceled during phase 3, error = ORA-16827
Reinstate fails since Flashback Database is disabled (ORA-16827).
In this case you have to re-create the standby database with a new backup of the primary database.
The new standby database is still running as 'primary database', there is no chance to convert
the database back to a standby without flashback enabled.
Please note :- When standby is recreated using rman duplicate Broker might still shows the db needs to be reinstated .
In such case you need to removed the Standby from the Broker config and re-added it
To avoid such errors in any further failover-issues, please enable flashback on primary and
all involved standby databases.
Please see also fallowing document for more details:
Oracle Data Guard Broker 11g Release 2 (11.2)
5.4.3.1 How to Reinstate a Database