SQL> select process, status from v $ managed_standby;
PROCESS STATUS
---------------------
ARCH CONNECTED
ARCH ERROR
RFS IDLE
RFS IDLE
Check parameter and find log_archive_dest_state_2 sets ENABLE. Because no switch over is performed, this parameter is useless for my DG.
So:
Alter system set log_archive_dest_state_2 = 'delete' scope = both;
Re-query:
SQL> select process, status from v $ managed_standby;
PROCESS STATUS
---------------------
ARCH CONNECTED
ARCH ERROR
MRP0 WAIT_FOR_LOG
RFS IDLE
RFS IDLE
No effect.
View parameters:
Log_archive_max_processes integer 2
There is actually only one valid ARCH process for me, so:
Alter system set log_archive_max_processes = 1 scope = 1;
SQL> select process, status from v $ managed_standby;
PROCESS STATUS
---------------------
ARCH CONNECTED
RFS IDLE
RFS IDLE
MRP0 WAIT_FOR_LOG
Return:
Alter system set log_archive_max_processes = 2 scope = 2;
SQL> select process, status from v $ managed_standby;
PROCESS STATUS
---------------------
ARCH CONNECTED
ARCH CONNECTED
RFS IDLE
RFS IDLE
MRP0 WAIT_FOR_LOG
Solve the problem.