一.Data Guard架构

  整个Data Guard体系就是围绕三个关键点展开:

  1. 日志发送(Redo Send)
  2. 日志接收(Redo Receive)
  3. 日志应用(Redo Apply)

二.日志发送

Primary Database产生的redo日志需要发送到standby Database。

发送动作由primary database的LGWR或者ARCH进程完成。

不同的归档目的地可以使用不同的进程;但同一目的地只能选用一种进程

使用ARCH进程发送日志:

  1. Primary Database 产生redo log 的日志被LGWR进程写到联机日志。
  2. 当一组联机日志被写满后,会发生日志切换(log switch),并且会触发本地归档;
  3. 完成本地归档后,联机日志可以被覆盖重用;
  4. ARC1进程通过Net把归档日志发送给Standby Database的RFS进程。
  5. Standby Database的RFS进程把接收到的日志写入归档日志;
  6. Standby Database的MRP进程(Redo Apply)或者LSP进程(SQL Apply)在Standby Database上应用这些日志,进而同步数据。

总结

  1. 默认情况下,Primary Database使用ARCH进程发送日志。
  2. 使用ARCH进程发送日志只支持最高性能保护模式。  对于最大保护和最高可用性两种模式而言,强调的都是一点,redo数据必须实时应用于standby数据库。可使用ARCH进程发送日志并非将redo数据实时应用于standby数据库,而是只有Primary Database日志归档完成后才会将归档日志发送到Standby Database。当Primary Database异常宕机时,就会有部分未归档的数据无法传到Standby Database,造成数据丢失。

使用LGWR进程的SYNC方式

  1. LGWR进程把日志写到本地日志文件的同时还要发送给本地的LNSn进程,再由LNSn进程把日志通过网络发送给远程目的地
  2. 必须等待写入本地日志文件操作和通过LNSn进程的网络传送都成功,Primary 数据库上的事务才能提交,这就是SYNC。
  3. Standby数据库的RFS进程把接收到的日志写入到Standby Redo Log日志中。
  4. Primary 数据库的日志切换也会触发Standby数据库上的日志切换,即Standby数据库对Standby Redo Log的归档。
  5. Standby数据库可以使两种恢复方式:1)实时恢复(Real Time Apply),只要RFS把日志写入Standby Redo Log日志中就会立即进行恢复;2)归档时恢复,在完成对Standby Redo Log的归档后才恢复

使用LGWR进程的ASYNC方式

  1. LGWR负责把日志写入本地日志文件;不必等待LNS进程的网络传送成功。
  2. LNSn进程异步的将日志发送到Standby数据库
  3. Primary 数据库的日志切换也会触发Standby数据库上的日志切换,即Standby数据库对Standby Redo Log的归档。
  4. MRP或LSP 进程恢复归档日志

总结:如果不明确指定,默认是SYNC(同步方式)。

注:11g开始,不再把通过ARCH的日志发送作为一种单独的方式提出。

三.日志接收

Standby数据库的RFS进程接收到日志后,就把日志写到Standby Redo Log或者Archived Log文件中。具体写入哪种文件,取决于Primary 数据库的日志传送方式和Standby数据库的配置。

Dataguard之redo传输服务的更多相关文章

  1. Dataguard中日志传输服务

    之前,原本已经尝试过配置oracle实例的逻辑和物理standby结构,并且做个一些role交换操作,可是由于昨天学习rman的部分命令时没留意,误删掉了primary DB上的所有归档日志,因为原来 ...

  2. dataguard 日志传输服务

    1.日志传输可以分为 lgwr和ARCH,默认是arch,其中lgwr传输可以分为async和syncsync:同步服务,只有在事物参数的日志成功的传输到备库的目的地,事物才能提交.虽然同步服务没有限 ...

  3. data guard 的redo 传输

    data guard 通过把redo从primary数据库传输到standby数据库并应用在standby数据库来实现自己的功能. redo 传输是有2种模式 1. 同步 sync 2. 异步 asy ...

  4. WCF大文件传输服务

    由于项目需要,自己写一个基于WCF的大文件传输服务雏形.觉得有一定的参考价值,因此放在网上分享. 目前版本为v1.1特点如下: 1.文件传输端口为18650 2.上传和下载文件 3.支持获取文件传输状 ...

  5. 网站优化与Cdn文件传输服务

    网站优化与Cdn文件传输服务 如今互联网无处不在,其方便快捷.性质和低成本的经济特点,已经逐渐成为商务贸易.信息分发和数据交付的一个重要渠道.要想让数据的分发带来巨大的效益,那么网民的满意是唯一的办法 ...

  6. FTP文件传输服务

    FTP文件传输服务 一 .FTP 连接及传输的模式 l  控制连接:TCP21,用于发送FTP命令信息. l  数据连接:TCP 20, 用于上传下载数据. · 数据连接建立的类型: ·主动模式: 服 ...

  7. iOS 后台传输服务

    后台传输服务 — 我们用水壶来比喻 (0:14) 后天传输服务是 iOS 7 引进的 API,它准许应用暂停或者中止之后,在后台继续执行网络服务(比如下载或者上传).举个例子,这正是 Dropbox ...

  8. Python自带HTTP文件传输服务

    一行命令搭建一个基于python的http文件传输服务 由于今天朋友想要一个文件,而我恰好有,因为这个文件比较大,网速不是很给力,所以想到了python自己有这么一个功能,这样不仅不需要下载其他软件, ...

  9. FTP 文件传输服务

    昨晚心血来潮,尝试用python写了一个ftp文件传输服务,可以接收指令,从远程ftp服务器同步指定目录数据,最后没用上,开源出来. https://github.com/jadepeng/ftp_t ...

随机推荐

  1. [转]SVN:This client is too old to work with working copy 的解决方案

    前一段时间,我在Eclipse碰到一个SVN错误,出现的原因是我的Eclipse的SVN插件是1.6,服务器的SVN版本是1.5.4,然后我在工程目录下做了一次提交操作(不是Eclipse里),到最后 ...

  2. 补充:tableView优化总结

    tableView优化方式总结 (说明:一下只是我自己的小总结,会有不足,望大神指正,多谢大家了) 1 缓存 cell 的行高.目的方便第二遍访问 cell. 2 减少图片的blend 操作.包括:设 ...

  3. Shell学习笔记 - 环境变量配置文件

    一.source命令 功能:在当前bash环境下读取并执行配置文件中的命令 1. 命令格式 source 配置文件  或  . 配置文件 2. 命令示例 [root@localhost ~]# sou ...

  4. CentOS服务器的16个监控命令

    你可以通过图形化用户界面(GUI)程序来获取这些外壳命令提供的大量信息,具体取决于使用哪一种Linux发行版.比如说,SUSE Linux就有一款出色的.图形化配置和管理工具YaST,KDE的KDE ...

  5. QTREE3 spoj 2798. Query on a tree again! 树链剖分+线段树

    Query on a tree again! 给出一棵树,树节点的颜色初始时为白色,有两种操作: 0.把节点x的颜色置反(黑变白,白变黑). 1.询问节点1到节点x的路径上第一个黑色节点的编号. 分析 ...

  6. XML语言:可扩展的标记语言;

    作用:1. 解决跨语言的数据交换,C#与Javascript 语言的数据交换:. 2.XML:用于数据的存储以及传输:1.新建方法: 在解决方案资源管理器----选中网站名---右击添加新建项---- ...

  7. JQuery multiselect的相关使用

    这两天做项目需要用到多选控件,于是选择了JQuery  multiselect控件,介绍一下常用的一些相关属性. 详细地址:http://davidstutz.github.io/bootstrap- ...

  8. How To Install Development Tools In Linux

      In this brief tutorial, we will be discussing how to install development tools in popular Linux di ...

  9. MVC中的Routing

    Routing ASP.NET Routing模块的责任是将传入的浏览器请求映射为特有的MVC controller actions. public static void RegisterRoute ...

  10. css隐藏元素display:none,opacity:0;filter:alpha(opacity=0-100;,visibility:hidden的区别

    在CSS中,让元素隐藏(指屏幕范围内肉眼不可见)的方法很多,有的占据空间,有的不占据空间:有的可以响应点击,有的不能响应点击.我们一般有三种方式:display:none, opacity:0;fil ...