dataguard基本简介及三大保护模式介绍

一、容灾复制方案

1、阵列的复制技术(硬件) 磁盘柜和磁盘柜之间 远程不支持

通过在阵列之间进行复制,异地保存数据

对存储设备和网络环境要求比较高。比如 EMC 存储)

2、基于逻辑卷的复制技术(操作系统层面) 不支持灾备

通过LVM的镜像技术来实现。如 IBM AIX 的逻辑卷的复制技术)

3、基于 Oracle 的 redo log 的复制(在数据库应用层) 可提供灾备的复制技术

1) DataGuard

2) GoldenGate

3) Stream

二、什么是DG

1)不同于RAC保护主机,DG保护的是数据库

2)主库(一个)和备库(可以多个),异地容灾

3)物理DG和逻辑DG

物理复制:将主库的redo log传递到备库后,备库对redo log日志进行recovery,来和主库保持一致。(主库和备库必须是相同的环境,备库一般处于只读状态)。

逻辑复制:将主库的redo log传递到备库后,再利用logminer 的工具,从redo log中解析出sql语句,在备库执行,保证和主库同步。(主库和备库可以是不同的环境,备库可以处于读写状态)逻辑备库可以看作是一个单独的库,数据库名和DBID和主库都不一样。(物理的备库和主库的数据库名和DBID都是同样的。)

4)Oracle Data Guard

Oracle 成本最低的容灾技术(Oracle企业版自动支持,通过主库和备库来实现容灾;一般主库处于生产环境,备库处于备份状态,或者可以利用备库做数据查询、生成报表、数据备份等减轻主库的压力)

主库将redo log传递到备库上,备库对redo log进行应用以保持和主库的同步。

(物理----RECOVERY,逻辑-----应用sql语句)

5)DG 环境

主库1个,备库最多可以有 9 个

1、主库和备库之间都是单实例

2、主库是RAC,备库是单实例

3、主库是RAC,备库也是RAC(MAA实现最高可用性)

三、DG的保护模式

1.最大保护(Maximum Protection) SYNC同步模式

这种模式能够确保绝无数据丢失。要实现这一步当然是有代价的,它要求所有的事务在提交前其REDO不仅被写入到本地的Online Redologs,还要同时写入到Standby数据库的Standby Redologs,并确认REDO数据至少在一个Standby数据库中可用(如果有多个的话),然后才会在Primary 数据库上提交。如果出现了什么故障导致Standby数据库不可用的话(比如网络中断),Primary 数据库会被Shutdown,以防止数据丢失。使用这种方式要求Standby Database必须配置Standby Redo Log,而 Primary Database必须使用LGWR,SYNC,AFFIRM方式归档到Standby Database.

2.最高可用(Maximum availability)

这种模式在不影响 Primary 数据库可用前提下,提供最高级别的数据保护策略。其实现方式与最大保护模式类似,也是要求本地事务在提交前必须至少写入一台(俗称同步模式)

Standby 数据库的 Standby Redologs 中,不过与最大保护模式不同的是,如果出现故障导致Standby数据库无法访问,Primary数据库并不会被Shutdown,而是自动转为最高性能模式,等Standby数据库恢复正常之后,Primary数据库又会自动转换成最高可用性模式。这种方式虽然会尽量避免数据丢失,但不能绝对保证数据完全一致。这种方式要求Standby Database必须配置Standby Redo Log,而Primary Database 必须使用LGWR SYNC,AFFIRM方式归档到Standby Database.

3.最高性能(Maximum performance) ASYNC异步模式

缺省模式。这种模式在不影响Primary数据库性能前提下,提供最高性能级别的数据保护策略。事务可以随时提交,当前Primary 数据库的REDO数据至少需要写入一个Standby数据库,不过这种写入可以是不同步的。如果网络条件理想的话,这种模式能够提供类似最高可用性的数据保护,而仅对 Primary 数据库的性能有轻微影响。

这也是创建Standby数据库时,系统的默认保护模式。这种方式可以使用 LGWR ASYNC 或者 ARCH 进程实现,Standby Database也不要求使用Standby Redo Log

DG的有关进程
RFS: (Remote File Server)在备库上启用的进程,接收重做日志(redo log和arch log)

LNSn: (LGWR Network Server Process)本地网络服务,在主库上负责传送redo日志

MRP: (Managed Recovery Process)备库上管理恢复进程,如果是物理 DG,用于对redo log做recovery

LSP: (Logical Standby Process)备库上逻辑备用进程,逻辑DG,是对redo log中抽取的sql进行应用。

DG的同步和异步传输方式
一)典型的SYNC 方式

实时恢复(Real-TimeApply):日志写入StandbyRedoLog就会立即进行恢复;

归档恢复:在完成对StandbyRedoLog归档才触发恢复。

 

 

典型的ASYNC方式
由主库归档进程(ARCH)负责推送日志,MRP从备库的归档中恢复数据

(注:异步可以有两种模式①LGWR+ASYNC,②ARCH+ASYNC)

 

 

文章知识点与官方知识档案匹配,可进一步学习相关知识
MySQL入门技能树数据库组成表20147 人正在系统学习中
————————————————
 
参考:dataguard基本简介及三大保护模式介绍

posted @ 2022-10-26 10:01  aspirant  阅读(210)  评论(0编辑  收藏  举报