ORA-16623: member detected role change

Playing with dataguard failover scenarios I bumped into this error:

Configuration - emrep_dg_config

  Protection Mode: MaxPerformance
  Members:
  db_pri - Primary database
    Error: ORA-16623: member detected role change

    db_stby - Physical standby database 

Fast-Start Failover:  Disabled

Configuration Status:
ERROR   (status updated 0 seconds ago)

DGMGRL> disable configuration;
Error: ORA-16623: member detected role change
Error: ORA-16625: cannot reach member "db_pri"

Failed.
DGMGRL> 

That’s due to inconsistent information within the broker files from both servers.

To fix this, we can do this:

# on both servers:
alter system set dg_broker_start=false
-- delete the dgbroker config files (default location is $ORACLE_HOME/dbs/
# then on both sites:
alter system set dg_broker_start=true

### check again the configuration:
[oracle@server admin]$ dgmgrl 
DGMGRL for Linux: Release 19.0.0.0.0 - Production on Sun Apr 12 07:17:37 2020
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.

Welcome to DGMGRL, type "help" for information.
Connected to "db_pri"
Connected as SYSDBA.
DGMGRL> show configuration;
ORA-16532: Oracle Data Guard broker configuration does not exist

Configuration details cannot be determined by DGMGRL
DGMGRL> 

Leave Comment

Your email address will not be published. Required fields are marked *