SQL> select process,status from v$managed_standby;

PROCESS STATUS
--------- ------------
ARCH CONNECTED
ARCH ERROR
RFS IDLE
RFS IDLE


查看parameter,发现log_archive_dest_state_2设置ENABLE。由于不做SWITCH OVER,所以,这个参数对于我的DG来说,是没用的。


于是:

alter system set log_archive_dest_state_2='DEFER' scope=both;


重新查询:

SQL> select process,status from v$managed_standby;

PROCESS STATUS
--------- ------------
ARCH CONNECTED
ARCH ERROR
MRP0 WAIT_FOR_LOG
RFS IDLE
RFS IDLE


没有效果。

查看参数:

log_archive_max_processes integer 2

对于我的有效ARCH进程实际上只有一个有效,于是:

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


开回来:

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



问题解决。