Thursday, March 27, 2014

DGMGRL show configuration reporting ORA-16810: multiple errors or warnings detected for the database

I was getting the error on primary an standby databases under show configuration .
DGMGRL> show configuration
Configuration - racdg
  Protection Mode: MaxPerformance
  Databases:
    RAC      - Primary database
      Error: ORA-16810: multiple errors or warnings detected for the database
    RAC_STBY - Physical standby database
      Error: ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
Fast-Start Failover: DISABLED
Configuration Status:
ERROR
DGMGRL> 
To get more details I looked at individual database
DGMGRL>
DGMGRL> show database 'RAC'
Database - RAC
  Role:            PRIMARY
  Intended State:  TRANSPORT-ON
  Instance(s):
    RAC1
      Error: ORA-16737: the redo transport service for standby database "RAC_STBY" has an error
    RAC2
      Error: ORA-16737: the redo transport service for standby database "RAC_STBY" has an error
Database Status:
ERROR
DGMGRL>
This prompted me to see the alert logs of primary database where I was getting error that primary is not able to connect to standby
***********************************************************************
Fatal NI connect error 12528, connecting to:
 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=racdr1-vip)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=RAC_STBY.localdomain)(CID=(PROGRAM=oracle)(HOST=rac1.localdomain)(USER=oracle))))
  VERSION INFORMATION:
        TNS for Linux: Version 11.2.0 - Production
        TCP/IP NT Protocol Adapter for Linux: Version 11.2.0 - Production
  Time: 27-MAR-2014 13:23:09
  Tracing not turned on.
  Tns error struct:
    ns main err code: 12564
 
TNS-12564: TNS:connection refused
    ns secondary err code: 0
    nt main err code: 0
    nt secondary err code: 0
    nt OS err code: 0
***********************************************************************

My immediate response was to see if the database on stanby is running or which was not
[oracle@racdr1 ~]$ srvctl status database -d RAC_STBY
Instance RAC_STBY1 is not running on node racdr1
[oracle@racdr1 ~]$ 
After starting the stand by database.
[oracle@racdr1 ~]$ srvctl start database -d RAC_STBY
[oracle@racdr1 ~]$ 
I was too quick on primary issuing the statement and found that oracle now knows that we are starting standby database.
DGMGRL> show configuration

Configuration - racdg
  Protection Mode: MaxPerformance
  Databases:
    RAC      - Primary database
    RAC_STBY - Physical standby database
      Error: ORA-16770: Redo Apply not started since physical standby database is opening
Fast-Start Failover: DISABLED
Configuration Status:
ERROR
DGMGRL>
Once the database was started on standby all went good.
DGMGRL> show configuration
Configuration - racdg
  Protection Mode: MaxPerformance
  Databases:
    RAC      - Primary database
    RAC_STBY - Physical standby database
Fast-Start Failover: DISABLED
Configuration Status:
SUCCESS
DGMGRL>
DGMGRL>
DGMGRL> show database 'RAC'
Database - RAC
  Role:            PRIMARY
  Intended State:  TRANSPORT-ON
  Instance(s):
    RAC1
    RAC2
Database Status:
SUCCESS
DGMGRL>
DGMGRL>
DGMGRL> show database 'RAC_STBY'
Database - RAC_STBY
  Role:            PHYSICAL STANDBY
  Intended State:  APPLY-ON
  Transport Lag:   0 seconds
  Apply Lag:       0 seconds
  Real Time Query: ON
  Instance(s):
    RAC_STBY1
Database Status:
SUCCESS
DGMGRL> 


No comments: