1.最大可用性模式(Maximum Availability)

1)该模式提供了仅次于“最大保护模式”的数据保护能力;

2)要求至少一个物理备库收到重做日志后,主库的事务才能够提交;

3)主库找不到合适的备库写入时,主库不会关闭,而是临时降低到“最大性能模式”模式,直到问题得到处理;

4)优点:该模式可以在没有问题出现的情况下,保证备库没有数据丢失,是一种折中的方法;

5)缺点:在正常运行的过程中缺点是主库的性能受到诸多因素的影响。

2.最大性能模式(Maximum Performance)

1)该模式是默认模式,可以保证主数据库的最高可用性;

2)保证主库运行过程中不受备库的影响,主库事务正常提交,不因备库的任何问题影响到主库的运行;

4)优点:避免了备库对主数据库的性能和可用性影响;

5)缺点:如果与主库提交的事务相关的恢复数据没有发送到备库,这些事务数据将被丢失,不能保证数据无损失。

3.最大保护模式(Maximum Protection)

1)这种模式提供了最高级别的数据保护能力;

2)要求至少一个物理备库收到重做日志后,主库的事务才能够提交;

3)主库找不到合适的备库写入时,主库会自动关闭,防止未受保护的数据出现;

4)优点:该模式可以保证备库没有数据丢失;

5)缺点:主库的自动关闭会影响到主库的可用性,同时需要备库恢复后才能提交,对网络等客观条件要求非常的高,主库的性能会因此受到非常大的冲击。

三种模式

比较项

最大保护

最高可用

最大性能

Redo写或传输进程

lgwr

lgwr

lgwr或者arch

网络传输模式

sync

sync

sync或者async

是否落盘确认

affirm

affirm

affirm或者noaffirm

standby redologs

需要

需要

可有可无

ARCH传输模式只能用于最大性能模式下

最大保护和最高可用模式下只能使用LGWR SYNC传输模式

AFFIRM:在日志写进程进行之前,所以的归档日志和备库日志必须同步写完

NOFFIRM:在主库的日志写进程不等所有磁盘IO完成

参数如缺省的 则是NOFFIRM

使用AFFIRM时,可以确保以下三点:

1能确保数据没有丢失在主库失败后

2 可以在本地或远程使用

3 影响主库的性能

LGWR和AFFIRM,日志写进程同步写REDO DATA到磁盘,在DISK写完前,控制权不交给用户,还有主库的在线日志可能不可用在归档完成之前

ARCH和AFFIRM ARCn进程同步写REDO DATA到磁盘,归档操作可能发生时间比较长,主库的在线日志在归档完成日志前可能不可用。

ASYNC和AFFIRM,性能不受影响。

设置参数位置

主库log_archive_dest_n参数设置

示例:*.log_archive_dest_2='service=orcl  lgwr sync affirm

valid_for=(online_logfiles,primary_role)  db_unique_name=orcl'

重要参数分析

arch:只支持最大性能模式。归档日志通过primary上的arch进程传送给standby的rfs进程,保存到指定路径(如果有standby redo logfile,则保存到该位置,然后再归档),然后redo应用。

lgwr:primary使用LGWR即时将日志传送到standby的rfs进程,并保存到standby redo logfile中,而不再需要等到归档操作时才传送,保存到standbyredo logfile,然后再归档,然后redo应用。

用LGWR传输大致如下:

1)主库:只要有新的重做日志产生,lgwr进程将触发LNSn进程把新生成的日志传输给备库rfs进程。

2)备库:rfs进程接收到日志后,将其写入standby重做日志,如果备库开启了实时应用,就立即做日志应用,如果没有开启,则等standby重做日志归档后再应用。

3)其中,async和sync的区别在于:sync是在redo还在内存时,LNSn进程就开始传输,而async是在redo写到online redo log后,LNSn才开始传输。

同步的实时性来看,lgwr(sync) > lgwr(async)> arch

sync模式下,主库产生任何redo时,同时马上触发网络传输给备库RFS进程;

async模式下,主库产生redo时,先写到本地online redo logfile文件中,LNSn进程从online redo logfile文件中取redo数据网络传输给备库RFS进程。

模式切换

首次performance>>availability>>protection顺序需要在主库执行且主库必须处于mount状态;

如果已经由performance>> availability>>protection数据保护级别操作过1次,那么再次操作时可直接操作;

protection>>availability>>performance顺序直接操作即可

主备库操作:SQL>select database_role,protection_mode,protection_level from v$database;

主库更改log_archive_dest_n参数配置,如:

SQL>alter system set log_archive_dest_2='service=orcldg lgwr sync valid_for=(online_logfiles,primary_role) db_unique_name=orcldg';

主库操作:SQL> shutdown immediate;

备库操作:alter database recover managed standby database cancel;

主库操作:SQL>startup mount;

主库操作:SQL>alter database set standby database to maximize availability;

主库操作:SQL>alter database open

完成。

-----------------------------------------------------------------------------------------上下一样的--------------------------------------------------------------------------------------------------

切换方式

1.主库启动到mount状态

2.主库中执行如下SQL语句

SQL> ALTER SYSTEM SET log_archive_dest_2='SERVICE=DG LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=DG';

SQL> ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE {AVAILABILITY | PERFORMANCE | PROTECTION};

3.查询保护模式语句

SQL> SELECT PROTECTION_MODE FROM V$DATABASE;

adg的数据传输应用三大模式转换的更多相关文章

  1. Linux中的模式转换

    模式转换: 编辑-->输入: i: 在当前光标所在字符的前面,转为输入模式: a: 在当前光标所在字符的后面,转为输入模式: o: 在当前光标所在行的下方,新建一行,并转为输入模式: I:在当前 ...

  2. [转载]LVS+Keepalived之三大模式

    LVS + Keepalived之三大模式 ============================================================================== ...

  3. Linux大小端模式转换函数

    转自 http://www.cnblogs.com/kungfupanda/archive/2013/04/24/3040785.html 不同机器内部对变量的字节存储顺序不同,有的采用大端模式(bi ...

  4. htonl(),htons(),ntohl(),ntons()--大小端模式转换函数

    不同机器内部对变量的字节存储顺序不同,有的采用大端模式(big-endian),有的采用小端模式(little-endian). 大端模式是指高字节数据存放在低地址处,低字节数据放在高地址处. 小端模 ...

  5. imx lcd HV和DE模式转换

    有些时候拿到的lcd手册中关于芯片的时序使用的DE模式的,而imx6内核中使用的参数设置趋势HV模式,应此就需要将DE模式的参数转化为HV模式. 参考链接: https://community.nxp ...

  6. 命令和python模式转换

    安装完paython成功之后,就必须了解一下:命令模式和python交互模式 1.我们输入  cmd  之后进入的运行环境就是命令模式 2.在命令模式下输入  python,看到>>> ...

  7. RabbitMQ 最常用的三大模式

    目录 Direct 模式 Topic 模式 Fanout 模式 Direct 模式 所有发送到 Direct Exchange 的消息被转发到 RouteKey 中指定的 Queue. Direct ...

  8. HTML连载30-CSS显示模式&模式转换

    一.CSS显示模式​ 1.在HTML中HTML将所有的标签分为两类,分别是容器类和文本级.在CSS中CSS也将所有的标签分为两类,分别是块级元素和行内元素 2.什么是块级元素呢?什么是行内元素​? ( ...

  9. ADG环境搭建

    一:实验环境介绍PC机系统: CentOS 6.5(64位)数据库版本: Oracle 11gR2 11.2.0.4 (64位)IP地址规划:主数据库10.110.9.41 SID:orapridb_ ...

随机推荐

  1. linux每日命令(18):whereis命令

    whereis命令用于查找文件. 该指令会在特定目录中查找符合条件的文件.这些文件应属于原始代码.二进制文件,或是帮助文件. 该指令只能用于查找二进制文件.源代码文件和man手册页,一般文件的定位需使 ...

  2. Asp.Net AutoMapper用法

    1.AutoMapper简介 用于两个对象映射,例如把Model的属性值赋值给View Model.传统写法会一个一个属性的映射很麻烦,使用AutoMapper两句代码搞定. 2.AutoMapper ...

  3. Centos 6.4 安装dnsmasq

    1 下载源码 wget http://www.thekelleys.org.uk/dnsmasq/dnsmasq-2.45.tar.gz cp dnsmasq-2.45.tar.gz /usr/src ...

  4. vector、map 内存释放

    一.vector void TestVector() { cout << "begin create vector" << endl; int iSize ...

  5. python初级 2 字符串格式化

    一.回顾 上次我们讲解的数据类型,有int,float,str,bool,NoneType五种 前两种和后两种都比较简单,str较为复杂 二.字符串格式化的使用场景: 有一种字符串, xxx 的内容都 ...

  6. 嵌入式开发之hi3519---lvds ,mipi,camera sensor,/DVI/HDMI Interface

    http://blog.csdn.net/mao0514/article/details/54015466

  7. Schema中elementFormDefault="qualified"所起的作用

    有的xsd文件的开头是这样写的: <?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.or ...

  8. http 请求参数之Query String Parameters、Form Data、Request Payload

    Query String Parameters 当发起一次GET请求时,参数会以url string的形式进行传递.即?后的字符串则为其请求参数,并以&作为分隔符. 如下http请求报文头: ...

  9. 如何把光盘制作成ISO镜像文件

    如何把一张光盘转换成为ISO的镜像文件呢,这需要借助软件的力量. 下面来简单的介绍下吧. 工具/原料 UltraISO软碟通软件. 光驱 方法/步骤 下载并安装UltraISO软碟通软件. 插入要做的 ...

  10. [IR] Advanced XML Compression - XBW

    思考:与ISX对比后能得出什么结论 原理解析: We proposed the XBW-transform that mimics on trees the nice structural prope ...