暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle Data Guard概述

原创 宋化鑫 2020-03-28
1447

1、Oracle Data Guard 简介

Oracle DG 可确保企业数据的高可用性、数据保护和灾难恢复。可在最高级别提供数据保护和可用性的同时,使 Oracle 保持卓越的性能。

2、Data Guard 的作用

备份、读写分离、容灾

3、Data Guard 保护模式

  • 最大保护模式 (Maximum Protection):用于主库发生故障时不会丢失数据。这种模式使用同步重做日志传输模式。直到重做日志被同时写入到主库的重做日志和备库的重做日志中后,事务才算提交成功。(如果主备系统之间通信中断,主数据库将会被关闭,而不是在非保护模式下继续工作)【 LGWR–LNSn–RFS–STANDBY REDO LOG】
  • 最大可用模式 (Maximum Availability):最大性能在不影响主库的情况下提供了最高级别的保护。除了无法将数据写入备库的重做日志,他的工作模式与最大保护模式相同。【 online redo—LNSn—RFS–STANDBY REDO LOG】
  • 最大性能模式 (Maximum Availability):最大性能模式时默认的保护模式,也是对主库影响最小的模式。它使事务所产生的所有日志一旦写入本地的在线重做日志,就提交该事务,从而做到对性能影响最小。重做日志还会被写入所有的备库,但是主库的提交不会等这些操作发生。【 ARCH–RFS–STANDBY REDO LOG】

4、Data Guard 的核心操作

redo send --> redo transport --> redo apply

5、Data Duard 的日志传输模式

1)使用 arch 进程
image.png

2)使用 lgwr 进程

  • a)sync

image.png

  • b)async

image.png

6、Data Guard 后台进程

  • LNSn (Log Network Server):DG 可以使用 ARCn 、LGWR 来传送日志,但是他们都是把日志发送给本地的 LNSn 进程,然后备库的 RFS 进程接收数据,接收到的数据可以存储在备库的备用 redo 日志,然后备库的 RFS 进程接收数据,接收到的数据可以存储在备库的备用 redo 日志文件中或备库的归档日志中,然后再应用到备库。
  • RFS (remote file server):主要用于接受从主库传送过来的日志信息。对于物理备库而言,RFS可以直接将日志写进到 Standby redo logs,也可以直接将日志信息写到归档日志中。
  • MRP (manager recovery process):该进程只针对物理备库,作用为应用从主库传递过来的Redo日志到物理备库,称为Redo Apply。如果使用SQL语句“ALTER DATABASE RECOVER MANAGED STANDBY DATABASE”启用该进程,那么前台进程将会做恢复。如果加上DISCONNECT语句,那么恢复过程将在后台进程,发出该语句的进程可以继续做其它的事情。
  • LSP (Logical Standby Process):只有逻辑备库才会有该进程。LSP进程控应用Redo日志到逻辑备库。

7、switchover 和 failover 的区别

  • switchover 是指主库转换成备库,然后将原备库转换成新主库; failover 是指将备库转换成主库。
  • 使用场合上的区别,switchover用于有准备的、计划之中的切换,通常是系统升级、数据迁移等常态任务。failover 用于意料之外的突法情况,例如自然断电、自然灾难等。
  • 数据丢失程度不同:Switchover不会丢失数据,Failover通常意味着有部分数据丢失。
  • 善后处理的不同:Switchover之后DG环境不会被破坏,仍然有Primary、Standby两种角色的系统存在,但是Failover之后,DG环境就会被破坏,一般情况下需要重建。但是,若主库或备库开启了闪回功能,则都可以通过闪回数据库功能恢复DG环境。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论