Saturday, March 6, 2021

Error: ORA-16724: cannot resolve gap for one or more standby databases

 If there is an archive gap and dataguard database is not fully in synch with the primary database, initiating DGMGRL and connecting to the database would immediately show ORA-16724 with the configuration. This can be seen bellow.

DGMGRL for Linux: Version - 64bit Production 

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

Welcome to DGMGRL, type "help" for information.
DGMGRL> show configuration 

Configuration - TEST DG configuration

  Protection Mode: MaxPerformance
      DB_PROD  - Primary database
      Error: ORA-16724: cannot resolve gap for one or more standby databases

DB_DG - Physical standby database

Fast-Start Failover: DISABLED

Configuration Status:

DGMGRL> show database verbose 'DB_DG';

Database - DB_DG

  Enterprise Manager Name: DB_DGP
  Role:                    PHYSICAL STANDBY
  Intended State:          APPLY-OFF
  Transport Lag:           1 day(s) 13 hours 20 minutes 23 seconds (computed 8 seconds ago)
  Apply Lag:               1 day(s) 13 hours 32 minutes 48 seconds (computed 0 seconds ago)
  Apply Rate:              (unknown)
  Real Time Query:         ON
    DB_DG1 (apply instance)

      DGConnectIdentifier             = 'DB_DG'
      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               = ''
      LogFileNameConvert              = '+REDO_DG1/DB_PROD, +REDO_DG1/DB_DG, +REDO_DG2/DB_PROD, +REDO_DG2/DB_DG'
      FastStartFailoverTarget         = ''
      InconsistentProperties          = '(monitor)'
      InconsistentLogXptProps         = '(monitor)'
      SendQEntries                    = '(monitor)'
      LogXptStatus                    = '(monitor)'
      RecvQEntries                    = '(monitor)'
      ApplyLagThreshold               = '0'
      TransportLagThreshold           = '0'
      TransportDisconnectedThreshold  = '30'

 This error clearly shows that some of the archived redo logs are not available on the standby site to apply, thus causing a gap. To solve this issue, make sure that all the required archived logs are available on the physical standby database so that they could be applied to the database. If not available, you can manually copy the archived logs from the primary database. If the required archived logs have been deleted, and/or cannot be restored, you might want to perform an incremental restore to synchronize the dataguard with the primary.

No comments:

Post a Comment

Popular Posts - All Times