DMON: HEALTH CHECK ERROR: ORA-16766: Redo Apply is stopped & ORA-16826: apply service state is inconsistent

Incident:
L’un de nos clients qui utilise ça base dataguard en lecture nous
signale que les données saisis  en production la veille ne sont toujours pas visibles sur le serveur de dataguard .

Analyse :
contrôle de la configuration sur la dataguard
DGMGRL>show configuration

Configuration – db4_dg

Protection Mode: MaxPerformance

Databases:

db3_dg – Primary database

db4_dg – Physical standby database

Error: ORA-16766: Redo Apply is stopped

Fast-Start Failover: DISABLED

Configuration Status:
ERROR

 

on remarque que le processus MRP est arrêté et donc absent des processus dataguard

 

SQL> SELECT PROCESS, STATUS FROM v$managed_standby;

PROCESS STATUS
————————— ————————————
ARCH CLOSING
ARCH CONNECTED
ARCH CLOSING
ARCH CLOSING
ARCH CLOSING
ARCH CLOSING
RFS IDLE

PROCESS STATUS
————————— ————————————
RFS IDLE
RFS IDLE
RFS IDLE
RFS IDLE
RFS IDLE

 

voir cette article sur la dataguard pour plus d’explication
http://simplicechoumenidba.com/2016/08/04/configuration-dataguard-oracle-11gr2/
Solution:
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
Database altered.

 

SQL> SELECT PROCESS, STATUS FROM v$managed_standby;

PROCESS STATUS
————————— ————————————
ARCH CLOSING
ARCH CONNECTED
ARCH CLOSING

ARCH CLOSING
ARCH CLOSING
RFS IDLE

PROCESS STATUS
————————— ————————————
RFS IDLE
RFS IDLE

RFS IDLE
MRP0 APPLYING_LOG
Le processus est de nouveau disponible, mais nous avons encore un warning pour l’inconsistance des données

DGMGRL> show configuration

Configuration – PRDCONFIG

Protection Mode: MaxAvailability
Databases:
TRANPRD – Primary database
DATAGUARD – Physical standby database
Warning: ORA-16826: apply service state is inconsistent with the DelayMinsproperty

Fast-Start Failover: DISABLED

Configuration Status:
WARNING
DGMGRL> show database verbose ‘DATAGUARD’;

Database – DATAGUARD

Role: PHYSICAL STANDBY
Intended State: APPLY-ON
Transport Lag: 0 seconds
Apply Lag: 0 seconds
Real Time Query: OFF
Instance(s):
DATAGUARD

Properties:
DGConnectIdentifier = ‘DATAGUARD’
ObserverConnectIdentifier =  »
LogXptMode = ‘SYNC’
DelayMins = ‘0’

Pour résoudre ce warning
Il faut
le standby physique en read only, on doit utiliser la commande suivante sur la base :

SQL> alter database recover managed standby database cancel;

Database altered.
Pour activer Real Time Apply sur la base de standby physique, le recover peut etre demarre sur la standby physique avec cette commande :
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;

L’utilisation de Real Time Appply permet à la base de standby d’avoir une sychronisation plus proche de la primaire en mettant en jour en temps
reel les donnees de la primaire vers la standby

 

DGMGRL>show configuration

Configuration – PRDCONFIG

Protection Mode: MaxPerformance

Databases:

db3_dg – Primary database

db4_dg – Physical standby database

Fast-Start Failover: DISABLED

 

Configuration Status:

SUCCESS

 

Il faut noter également que les archives sont bien transférées sur la standby mais ne sont pas appliqués

OraclementVotre

 

Post Comment

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *