Oracle-DG-启动实时应用,但是并未真正实时应用的情况,standby redo不符合大小

一、问题现象

12.2 DG启动实时应用,但是并未真正的实时应用,需要主库切换归档,DG才能应用!

主库
SQL>   select  DEST_NAME , STATUS , RECOVERY_MODE from v$archive_dest_status;
DEST_NAME                                STATUS             RECOVERY_MODE
---------------------------------------- ------------------ ----------------------------------------------
LOG_ARCHIVE_DEST_1                       VALID              IDLE
LOG_ARCHIVE_DEST_2                       VALID              MANAGED REAL TIME APPLY

备库
SQL> alter database recover managed standby database using current logfile disconnect from session;
v$managed_standby MRP0 WAIT_FOR_LOG

二、问题排查

Oracle 从11g 实时应用就建议standby redo logfile与log file 文件大小一致!  主库的redo变换会在dg写入standby redo log

SQL>  select thread#,group#,bytes/1024/1024 from v$log;
   THREAD#     GROUP# BYTES/1024/1024
---------- ---------- ---------------
         1          1             200

SQL> select group#,thread#,bytes/1024/1024 from v$standby_log;

    GROUP#    THREAD# BYTES/1024/1024
---------- ---------- ---------------
         4          0              50
文件大小不同! 虽然我们看视图standby redo 很可能只使用1个之类的,但是实际还是使用的!
SQL> alter database drop standby logfile group 4;

SYS>alter database add standby logfile thread 1 group 4 '/picclife/app/oracle/oradata/orcldg/redostandby04.log' size 200m;
SYS>alter database add standby logfile thread 1 group 5 '/picclife/app/oracle/oradata/orcldg/redostandby05.log' size 200m;
SYS>alter database add standby logfile thread 1 group 6 '/picclife/app/oracle/oradata/orcldg/redostandby06.log' size 200m;
SYS>alter database add standby logfile thread 1 group 7 '/picclife/app/oracle/oradata/orcldg/redostandby07.log' size 200m;

删除重建standby redo 

重新开启mgr进程!观察!

MRP0  APPLYING_LOG  基本稳了!  测试一波,但是需要主库切换一下redo才可以!  并没有立即真正的实时应用,主库切换下redo后续就OK了。

原文地址:https://www.cnblogs.com/lvcha001/p/14484605.html