I have many databases for which I have configured data guard setup. When it comes to monitoring the standby's, I use OEM to check the lag and I have enabled mail alerts as well as and when gap is more than 50 archives.
But the thing what I recently observed is that in one of my standby databases my recovery got stopped for one or more reasons and unfortunately lag also did not go above 50 so there was no alerts. In such a situation how I can ensure when my standby's recovery MRP itself is not active and I should be alerted in such a situation..
How is it possible? Any soultions?
Best Answer
There's a few ways to determine if MRP is running. One is to query open_mode from v$database. If MRP is running, you will get:
If not, you will get:
You can run the following query which will show what MRP processes are running:
Look for the process
MRPn
You could look in
V$DATAGUARD_STATUS.MESSAGE
for various things, including:Another way is on the primary, to check
If it's
IDLE
, it's not doing anything. With real-time apply enabled, it returnsMANAGED REAL TIME APPLY
.