1、Data Guard组件介绍 

Data Guard架构归类为3个主要的组件。

  • Data Guard 重做传输服务  重做传输服务用来将主数据库生成的重做数据传输给备用数据库。
  • Data Guard 应用服务          应用服务接受和应用由重做传输服务发给备用数据库的重做数据。
  • Data Guard 角色管理服务 角色管理服务在切换和故障转移场景中协助更改数据库角色。

如下图配置中都存在这些服务。

2、Data Guard 进程介绍

传输服务和应用服务结合使用,以同步主数据库与其备用数据库。几个Oracle 后台进程在物理备用Data Guard框架中扮演了重要角色。

主数据库上的几个重要的进程

  • LGWR : 日志写入进场将SGA中的日志缓冲区转存到ORL文件。
  • LNS :日志写入网络服务(Log Writer Network Service,LNS)从重做缓冲区读取重做(LGWR则将这些信息转储到ORL),然后将重做数据经由网络传给备用站点。LNS进程的主要目的是使LGWR进程不必再担当重做传输角色。
  • ARCH :归档进程将ORL文件归档到归档日志文件。ARCH进程多达30个之多,这些ARCH进程也用来满足间隔处理请求。注意,一个ARCH进程担当特殊角色,专用于本地重做日志归档,从来不与备用数据库通信。

以下为主数据库中一段alert日志,完整的记录了三个进程的运转过程:

Fri Jun 28 13:09:43 2013
Thread 1 advanced to log sequence 146 (LGWR switch)
  Current log# 1 seq# 146 mem# 0: +DATA/bdspoc/onlinelog/redo_group0101.dbf
Fri Jun 28 13:09:44 2013
LNS: Standby redo logfile selected for thread 1 sequence 146 for destination LOG_ARCHIVE_DEST_2
Fri Jun 28 13:09:46 2013
Archived Log entry 445 added for thread 1 sequence 145 ID 0xaed5d29c dest 1:

备用数据库上的几个重要的进程

  • RFS :RFS(远程文件服务器)进程的主要目标是接受主站点从网络传来的重做数据,然后将网络缓冲区(重做数据)写入备用重做日志(SRL)文件。
  • ARCH :备用站点上的归档进程与主站点上的归档进程作用相同,只不过在备用站点上,ARCH进程从SRL文件生成归档日志文件。
  • MRP : 托管恢复进程协调管理介质恢复。物理备用始终处于恢复模式。
  • LSP : 逻辑备用进程协调SQL  Apply。该进程仅运行于逻辑备份配置中。
  • PROx :此恢复服务器进程从SRL(在实时应用时)或归档日志文件读取重做数据,然后将其应用于备用数据库。

以下为备用数据库中一段alert日志,记录这几个重要的进程:

RFS[36]: Selected log 12 for thread 2 sequence 117 dbid -1361714017 branch 816281825
Media Recovery Waiting for thread 2 sequence 117 (in transit)
Recovery of Online Redo Log: Thread 2 Group 12 Seq 117 Reading mem 0
Mem# 0: /u01/app/oracle/oradata/bdspoc/group_12.dbf
Fri Jun 28 07:04:30 2013
Archived Log entry 80 added for thread 2 sequence 116 ID 0xaed5d29c dest 1:
Fri Jun 28 08:45:24 2013

3、 SRL(standby redo log)文件介绍

引入SRL文件是为了解决以下两个主要问题:

  • 数据保护:  如果没有使用SRL文件,而且与主数据库的连接中断,将无法保护留传入的重做数据---例如,如果主数据库出现故障,然后进行故障转移,那么连接中断时正在发送的数据就会丢失。如果将重做数据写入SRL,故障转移时已经永久保存了重做数据并可供使用。
  • 性能目标:当LNS(或Oracle Database 10gR1 之后的ARCH进程)连接到备用数据库时,仅当在备用数据库上的RFS进程创建和初始化了归档日志,LNS/ARCH才能开始发送重做数据。如果日志文件很大(比当今典型的重做日志问价大小500MB或1GB),这会导致暂停时间过长。该时间在日志切换时发生,因而对主数据库的吞吐量影响很大,但在Oracle Database 10gR2和11g中,在ASYNC模式下的LNS不阻止LGWR日志切换,但可能影响备用数据库在日志切换后的落后幅度。

事实证明,随着配置SRL,实时应用(Real-Time Apply,RTA)成为一项与生俱来的优势。

SRL文件与ORL文件基本相同,但SLR文件的逻辑差别是包含仅在备用站点上活动的当前重做数据。虽然主数据库也定义了SRL文件,但他们在主数据库上不活动,而当管理角色更改时启用。需要SRL配置为与ORL文件大小相等,否则无法使用SRL。此外,建议在备用站点上为每个实例配置N+1个SRL文件,这里的N是主站点上的每个线程的重做日志总数。

Data Guard组件等相关介绍的更多相关文章

  1. Data Guard相关参数学习介绍

    LOG_ARCHIVE_DEST_n 参数属性介绍 该参数的n在11g中为1到31,下列为参数的属性值: u  AFFIRM and NOAFFIRM u  ALTERNATE (not suppor ...

  2. 【DataGuard】部署Data Guard相关参数详解 (转载)

    原文地址:[DataGuard]部署Data Guard相关参数详解 作者:secooler    有关物理Data Guard部署参考<[DataGuard]同一台主机实现物理Data Gua ...

  3. Data Guard 介绍

  4. 在物理 Data Guard 中对异构主备系统的支持 (文档 ID 1602437.1)

    Data Guard中主数据库与物理备用数据库(Redo Apply)之间可以有什么差别?本说明针对重做应用和 Oracle Data Guard 12 发行版 1 进行了更新.它适用于 Oracle ...

  5. C# BackgroundWorker组件学习入门介绍

    C# BackgroundWorker组件学习入门介绍 一个程序中需要进行大量的运算,并且需要在运算过程中支持用户一定的交互,为了获得更好的用户体验,使用BackgroundWorker来完成这一功能 ...

  6. data guard折腾记一

    终于有空闲的机器腾出来了,生产环境上的一套Oracle环境终于可以鸟枪换炮了,生产环境有Data Guard,为了减少停机时间,而且避免重新构建Data Guard的麻烦(其实也不麻烦,就是浪费时间) ...

  7. Oracle涂抹oracle学习笔记第10章Data Guard说,我就是备份

    DG 是备份恢复工具,但是更加严格的意义它是灾难恢复 Data Guard是一个集合,由一个Primary数据库及一个或者多个Standby数据库组成,分两类逻辑Standby和物理Standby 1 ...

  8. Oracle11g Active Data Guard搭建、管理

    说明:參考网络众多人的笔记及思路,加上自己亲身实践之后的整理笔记.仅供參考. Data Guard与RAC不同的是.在普通情况下.Standby仅仅有一个节点处于活动状态,全部的应用都连接到主serv ...

  9. 日志组件Log2Net的介绍和使用(附源码开源地址)

    Log2Net是一个用于收集日志到数据库或文件的组件,支持.NET和.NetCore平台. 此组件自动收集系统的运行日志(服务器运行情况.在线人数等).异常日志.程序员还可以添加自定义日志. 该组件支 ...

随机推荐

  1. jQuery邮箱验证正则表达式验证邮箱合法

    if($.trim(email)==''||$.trim(email)=='邮    箱:'||$.trim(email)==null){ alert('邮箱不能为空!'); return false ...

  2. 使用Net.Mail、CDO组件、JMail组件三种方式发送邮件

    原文:使用Net.Mail.CDO组件.JMail组件三种方式发送邮件 一.使用Net.Mail 需要服务器认证,大部分服务器端口为25. { MailMessage mailMsg = mailMs ...

  3. Robotium源码分析之Instrumentation进阶

    在分析Robotium的运行原理之前,我们有必要先搞清楚Instrumentation的一些相关知识点,因为Robotium就是基于Instrumentation而开发出来的一套自动化测试框架.鉴于之 ...

  4. Android小应用-----画画板

    public class MainActivity extends Activity { private ImageView iv; float startX = 0; float startY = ...

  5. Keil中使用宏编译来定义DEBUG输出

    使用宏编译来格式化调试信息,是一个不错的方法,即可以在需要的时候打印出信息,还可以格式化我们所需要的输出. #define DEBUG 1 #if (DEBUG == 1) #define DBG(A ...

  6. 转载:你需要知道的16个Linux服务器监控命令

    源址:http://web.itivy.com/article-653-1.html 如果你想知道你的服务器正在做干什么,你就需要了解一些基本的命令,一旦你精通了这些命令,那你就是一个 专业的 Lin ...

  7. 关于FragmentManager动态管理Fragment时Fragment生命周期的探究

    Fragment是Android中的重要组件,在Android 3.0的时候添加进来. 关于Fragment的生命周期,我相信了解过的开发人员都应该把以下方法脱口而出:onAttach, onCrea ...

  8. ASP.NET MVC应用程序处理并发

    为ASP.NET MVC应用程序处理并发 2014-05-14 08:37 by Bce, 694 阅读, 2 评论, 收藏, 编辑 这是微软官方教程Getting Started with Enti ...

  9. POI操作EXCEL之导出Excel(设置有效性,下拉列表引用)

    本人使用的是poi-bin-3.10-FINAL-20140208.zip 版本的poi以下是程序关键代码: //需要引用的类 import java.io.File; import java.io. ...

  10. DefaultModelBinder

    Asp.net MVC的Model Binder工作流程以及扩展方法(3) - DefaultModelBinder Default Binder是MVC中的清道夫,把守着Model Binder中的 ...