• 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基本简介及三大保护模式介绍

  • 相关阅读:
    750. Number Of Corner Rectangles
    [Project Euler] 3. Largest Prime factor
    [Project Euler] 2. Even Fibonacci numbers
    Jmeter学习笔记3-参数化
    SQL多表连接查询补充
    Jmeter学习笔记2-原件作用域与执行顺序
    Jmeter学习笔记1-实践介绍
    运用badboy录制jmeter脚本
    【SQL提数】左连接使用
    【功能测试技巧2】dubbo引起的数据精度的思考
  • 原文地址:https://www.cnblogs.com/aspirant/p/16827290.html
Copyright © 2020-2023  润新知