Hello,
I manage the standby side of a Data Guard instance. This database is non-RAC (stand alone) without ASM and is running Oracle 11.2.0.3 on Oracle Linux 5. The primary side is owned and maintained by another company, so I don't have access to it. But I do have access to Data Guard Broker (so I can turn on and off the transport on the primary and such).
Lately the Standby has been running behind. we have a consistent 15-18 hour Transport Lag. Unfortunately, the two sites are connected via a 150Kb.s connection. Our standard procedure for attempting to sync the standby is to list the logs that are missing from the standby, call the owners of the primary and ask them to ship the missing logs over to our server manually. I then place the logs in the FRA and add them to the RMAN catalog with the "start catalog with 'oradata/FRA/standby/archivelog'" command. So far, so good.
But the problem is that the MRP and the RFS processes still are receiving and applying the same logs from the primary that I just manually cataloged. How do I get the Standby to recognize that those logs are in the local file system and that it should apply them from disk instead or from the primary?
I've tried bouncing the the transport and apply processes via data guard broker:
edit database 'primary' set state=TRANSPORT-OFF;
edit database 'standby; set state=APPLY-OFF;
edit database 'standby; set state=APPLY-ON;
edit database 'primary' set state=TRANSPORT-ON;
I've tried bouncing the MRP manually both with real time apply and without:
alter database recover managed standby database cancel;
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT;
...
alter database recover managed standby database cancel;
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT from session;
Nothing seems to work. every time I check the RFS Processes they are receiving the logs I have already cataloged. What do I do?
select inst_id, process, THREAD#, SEQUENCE#, DELAY_MINS, STATUS from gv$managed_standby;
Respectfully,
Lewis