在使用dataguard的时候,我执行了alter system set log_archive_dest_state_2='defer'后,备库还是能同步数据是怎么回事?
写回答
提问于2021-03-02
在使用dataguard的时候,我执行了alter system set log_archive_dest_state_2='defer'后,备库还是能同步数据是怎么回事?

在使用dataguard的时候,我执行了alter system set log_archive_dest_state_2='defer’后,备库还是能同步数据是怎么回事?

问题补充
写回答
2条回答
默认
最新
恩强Boy 2021-03-04

617a8e49abf979aeccd4cabfb6f54eb.png
46422a0a4f34460e9fcb8e0d9832090.png
这里有两张图说明了DG的运行原理

  1. 主库修改数据,记录写在redo buffer,主库的LNS进程会读取redo buffer内容,传递给备库;备库RFS进程接受传过来的数据,写进standby log,然后将standby log日志内容写进备库中,以达到数据同步目的(注意这段期间是不通过归档日志);
  2. 主库的归档日志是由主库redo log写进,备库的归档日志是由备库standby log写进,主备库归档日志并没有直接关系;
  3. log_archive_dest_state_2参数是指通过网络将主库的归档日志传输到备库,只是用来达到自动处理日志文件间隔的问题;
    综上,设置了log_archive_dest_state_2=defer,只是暂停了主库归档日志向备库的传输,并不会影响主备库数据的实时同步。

希望能帮助您!

0
0
0
Anbob 2021-03-04

— on primary
show parameter arch

— on standby
select scn_to_timestamp(current_scn) from v$database;

多次

0
0
0
回复问题
问题信息
请登录之后查看
邀请作答
暂无人订阅该标签,敬请期待~~
高分悬赏