- 在主库使用LNS进程从sga中的重做缓冲区中获得相应redo数据,然后通过网络服务传送到备库,备库通过RFS进程接收redo数据存在standby log file中,然后再应用(sql apply或是redo apply)数据。
何为同步传输模式呢?
顾名思义同步含有实时确认的意思。见如下图:
如果主库和备库因某种原因,导致lns进程无法传送数据到备库又会发生什么呢?
这种情况下叫传输滞后。
- 当数据库运行最高可用性下,当主库无法与备库进行通信,主库依然可以完成事务的提交,lgwr依然可以写入online redo日志,在没法通信期间主库可能会产生很多归档日志,Oracle为了在备库和主库能够再次通信应用redo日志的情况,会进行自动处理间隔操作。具体就是主库arch进程会不停ping备库,当和备库通信连接后,arch进程通过备库的rfs进程获得备库控制文件中最后应用的归档日志信息,将丢失的归档日志通过arch进程传送与备库进行应用。当在主库进行redo 日志切换的时候,lns进程会再次和备库的rfs进程通信继续完成redo条目的传送,arch传送的归档日志在后台进行应用。当备库和主库redo条目同步后arch的任务随即完成。