从这期开始讲Oracle Data Guard方面的内容,先将基本的概念,然后介绍如何搭建Data Guard
Data Guard作为Oracle提供的一个高可用及灾备解决方案,理解并可以实施它对于DBA来说是非常重要套的技能
上节讲了一些Data Guard的一些概念和参数,这节讲述Data Guard整个的工作流程,更好的理解以后的配置
这节分2部分:
主库端:
1. 事务生成redo数据至log buffer
2. LGWR进程将log buffer的数据写入Online redo log
这里根据主库的保护模式redo数据有如下传输方式:
注意:NSSn在12c才出现,之前版本使用LNS 进程
备库端:
3. 备库上的RFS进程将redo data 写入到 Standby redo log
4. 接下来根据备库的应用模式,redo 应用有如下方式:
主库端:
1. 事务生成redo数据至log buffer
2. LGWR进程将log buffer的数据写入Online redo log
3. 当OLR填满或者切换时,归档进程(ARC0)会复制ORL到归档日志
4. 接下来ARC1归档进程会将归档日志传输给备库的RFS进程
备库端:
5. 备库的RFS进程读取传输过来的归档日志
6. 备库的ARCn进程将读取的redo data重新归档在备库的归档路径
7. 当归档完成,MRP0进程会读取归档日志的redo 数据在备库上应用
为什么需要使用SRL
从上面的介绍中,我们强烈推荐Data Guard 使用Standby redo log
关于备库的归档日志路径
从上面的流程可以看出无论有无SRL,实际上备库的归档日志文件是由备库进程产生的
所以主库不能控制备库的归档日志路径
11g之前由standby_archive_dest参数指定
从11g开始由LOG_ARCHIVE_DEST_n参数指定,如同时指定两者,则standby_archive_dest会生效
如都未设置Oracle会自动将standby_archive_dest设置为$ORACLE_HOME/dbs/arch 路径
好了,关于Oracle Data Guard的工作流程就这么多了,通过这节内容我们知道了具体的流程和使用SRL的好处
下节讲述如何搭建物理备库
本文参考自:
https://community.oracle.com/docs/DOC-1007036