数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

Oracle]Data Guard 之 Redo传输详解


发布日期:2020年11月15日
 
Oracle]Data Guard 之 Redo传输详解

Data Guard主要提供两个服务
)Redo传输服务即把Primay端的Redo日志传输到一个或多个Standby目的地
)Redo应用服务即在Standby端应用从Primay端传输过来的Redo日志
本文先讲讲其中的Redo传输服务

使用ARCn传输Redo日志
默认情况下采用ARCn传输redo日志不过只有在最高性能模式下才可以使用ARCn(具体可参考Oracle] Data Guard 之 三种保护模式介绍          》)采用ARCH传输Redo日志的示意图如下

其大致过程如下
)Primay段ARC一旦完成日志切换ARC就将新生成的归档日志传输到Standby端
)Standby 端由RFS进程接受日志如果配置了standby redo log记录至standby redo log等standby redo  log做log switch形成归档日志再应用归档日志做恢复如果没有配置standby redo  logRFS进程接收到日志后放到standby端归档目录下standby再应用归档日志做恢复

使用LGWR传输Redo日志
使用LGWR进程和ARCn有很大的不一样最明显的区别是它不需要等Primary完成日志切换后再传输其示意图如下

其过程大致如下

)一旦Primary有Redo日志产生LGWR将触发LNSn进程传输Redo只Standby redo log注意这里不能由LGWR直接传输因为整个数据库实例只有一个LGWR为了保证它的主要性能不受影响不能由它直接传输)

)网络传输模式可以选择sync或asyncsync是指当Primary提交时  必须得等Redo传输至Standby成功后才能返回所以如果设置sync建议同时设置NET_TIMEOUT参数超时无响应则返回错误 async是指Primary提交是否成功和日志是否传输成功没有关系这样对Primary的性能影响最小

)Standby端的RFS进程把Redo写入Standby redo log如果开启了实时应用就将redo应用至Standby数据库如果没有开启实时应用等Standby redo log归档后再应用到Standby数据库

               

上一篇:怎么监控oracle数据库表和表空间

下一篇:关于ORACLE数据库中汉字显示乱码