Oracaledataguard操作手册
第一.dataguard的好处:
它是在主节点与备用节点间通过日志同步来保证数据的同步,可以实现数据库的快速切换与灾难性恢复,提供了灾难保护并防止数据丢失。Data Guard只是在软件上对数据库进行设置,并不需要额外购买任何组件。用户能够在对主数据库影响很小的情况下,实现主备数据库的同步。而主备机之间的数据差异只限于在线日志部分,因此可以被用作数据容灾解决方案。
第二.选用什么DG模式?
DG有三种模式,最大保护(Maximum protection), 最大性能(Maximum performance),最大可用性(Maximum availability),默认的就是最大性能模式。再实际的应用种使用最大性能模式比较多。 三种保护模式:
可以在V$DATABASE中查看到DataGuard的保护模式 SELECT PROTECTION_MODE, PROTECTION_LEVEL FROM V$DATABASE; 最大保护模式 Maximum Protection 这种模式能够确保绝无数据丢失,但是它要求所有的事务在提交前其 redo 不仅被写入到本地的 online redo log,还要同时提交到 standby 数据库的 standby redo log,并确认 redo 数据至少在一个 standby 数据库可用(如果有多个的话),然后才会在 primary 数据库上提交。如果出现了什么故障导致 standby数据库不可用的话,primary 数据库会被 shutdown。不适合在生产环境种应用。 最大性能模式是默认的保护模式。它与最大可用性模式相比,提供了稍微少一些的主数据库数据保护,但提供了更高的性能。在这种模式下,当主数据库处理事务时,重做数据由日志写入进程异步传输到备用数据库上。在任何情况下,均先完成主数据库上的写操作,主数据库的提交操作不等待备用数据库确认接收。在主数据库出现故障的情况下,可能有一些在主数据库上提交了的事务没有传输到备用数据库中。Primary不受影响备库影响。 最大可用性模式拥有仅次于最大保护数据可用性,并提供零数据丢失。如同最大保护模式一样,重做数据由日志写入进程从主数据库同步地传输到备用数据库,直到确认事务数据在备用服务器的磁盘上可用时,事务才在主数据库上完成。不过,在这种模式下(与最大保护模式不同),如果最后参与的备用数据库变为不可用,例如由于网络连接问题,处理将在主数据库上继续进行。备用数据库与主数据库相比,可能暂时落在后面,但当它再次变为可用时,备用数最大性能模式 Maximum Performance 最大可用性模式 Maximum Availability 据库将自动同步,备库不会丢失数据。对数据库性能有影响,数据丢失相对最大性能模式要小。不受备库影响。 第三.物理standby还是逻辑standby?
1,物理stand by直接从primary接受archived log,然后直接做恢复,效率较高,因为是使用最底层的块级别上的复制。
逻辑stand by是把primary接收过来的archived log解析为sql语句,然后做同步,效率较低,因为是执行SQL语句。
2,Physical standby的APPLY节点为MOUNT状态,Logical standby节点为OPEN状态,可分担primary上部分的查询和报表服务。
3,Physical standby可以实现与Primary来回switchover;logical standby切为Primary ,不能再切回来。
4,Physical standby可以切换为Logical standby ,但是logical 不能转换为Physical。
综合以上采取:物理standby模式,效率高,数据完整性好。
第四.如何创建物理standby?
见附件一:ORACLE 11G 搭建DATAGUARD步骤 大概步骤如下:
首先:配置主库
1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8
设置数据库强制归档 添加STANDBY日志文件 修改参数文件 修改监听配置文件 修改TNS配置文件 重启监听服务
启动数据库,配置DG模式:最大可用性模式或者最大性能模式 备份数据库
其次:配置备库。
2.1建立相应的文件目录 2.2从主数据库服务器上拷贝文件
2.3拷贝闪回区内容,参数文件以及监听文件, 2.4修改监听配置文件 2.5重启监听服务 2.6恢复数据库 2.7修改参数文件 2.8启动数据库
附件一:
ORACLE 11G 搭建DATAGUARD步骤.do
第五.Dataguard状态的监控以及常见问题的处理?
见附件二:dataguard日常维护 附件二:
dataguard日常维护.docx
第六.主备库切换,Swith over切换测试和Failover切换测试
切换是在主数据库与其备数据库之间进行角色反转,切换确保不丢失数据。这是对于主系统计划维护的典型操作。在切换期间,主数据库转换到备角色,备数据库转换到主角色。转换发生不需要重建任何数据库。
主备库的切换主要在两种情况下切换,Switchover和Failover,这两种切换都需要手工执行完成。
(1)Switchover
用到的场景:计划中的角色转换或用户操作系统和硬件的维护等。Switchover不会导致DG环境破坏。 (2)Failover
故障转移是当主数据库不可用时执行的。故障转移只有在主数据库灾难故障的情况下执行,并且故障转移导致备数据库转换到主角色。
用到的场景:非计划中的角色切换,一般在紧急情况下使用。根据保护模式的不同,可能会没有或者很少的数据损失。Failover会导致DG环境破坏需要重新搭建。
见附件三:Dataguard Switch Over
OracleDataguard操作手册20160912
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)