DG的数据保护模式
DG的数据保护模式
数据保护膜有三种:
– Maximum protection
– Maximum availability
– Maximum performance
Maximum protection
零数据丢失,在事务提交时,">redo data写local online redo log和">standby redo log,然后返回提交完成。primary shutdown时,启用故障保护,写">redo stream到至少一个同步的standby.对主库性能影响最大。
必要条件:
- 至少一个standby端必须有">standby redo log
- LOG_ARCHIVE_DEST_n参数至少对一个standby必须设置">SYNC和AFFIEM属性
注:">oracle建议最大保护模式下配置2个以上的">standby.
">Maximum performance
数据保护的默认级别,">standby应用主库传输过来的archivelog,对">primary的影响最小。
Maximum availability
primary和standby连接正常时,类似于">Maximum protection模式,主库与备库连接异常时,自动切换至Maximum performance模式。通常采用这种模式。
DG三种模式比较
|
模式 |
数据丢失风险 |
传输方式 |
没有应答时 |
|
Maximum protection |
零数据丢失, 双失败保护 |
SYNC |
primary挂起,直到收到应答 |
|
Maximum availability |
零数据丢失, 单一失败保护 |
SYNC FAST SYNC FAR SYNC |
primary挂起,直到达到设定的阀值,然后重启进程,standby失败不影响production的可用性。 |
|
Maximum performance |
可能丢失数据 |
ASYNC |
primary从不等待standby的应答 |
设定数据保护模式
ORACLE10g:
1.设定主备库LOG_ARCHIVE_CONFIG参数
例:
SQL> alter system set LOG_ARCHIVE_CONFIG='DG_CONFIG=(stephen,standby)';
2.在primary端配置">LOG_ARCHIVE_DEST_n参数
参数属性配置参考">ORACLE官方联机文档:
Minimum Requirements for Data Protection Modes
|
|
Maximum |
Maximum |
Maximum |
|
Redo archival process |
LGWR |
LGWR |
LGWR/ARCH |
|
Network transmission mode |
SYNC |
SYNC |
LGWR:SYNC/ASYNC;ARCH:SYNC |
|
Disk write option |
AFFIRM |
AFFIRM |
AFFIRM/NOAFFIRM |
|
Standby redo log required? |
Yes |
Yes |
No, but it is recommended |
3.升级数据保护模式
升级数据保护需要启动">primary到mount状态,如果是降级数据保护模式,在">OPEN状态即可。
执行以下命令更改数据保护模式:
SQL> alter database set standby database to maximize {availability| protection| performance};
4.打开主库
5.配置standby端">LOG_ARCHIVE_DEST_n参数
6.确认配置完成
SQL> select protection_mode, protection_level from v$database;
PROTECTION_MODE PROTECTION_LEVEL
--------------------- ---------------------
MAXIMUM AVAILABILITY MAXIMUM AVAILABILITY
ORACLE11g:
1.选择一种数据保护模式
Required Redo Transport Attributes for Data Protection Modes
|
Maximum Availability |
Maximum Performance |
Maximum Protection |
|
AFFIRM |
NOAFFIRM |
AFFIRM |
|
SYNC |
ASYNC |
SYNC |
|
DB_UNIQUE_NAME |
DB_UNIQUE_NAME |
DB_UNIQUE_NAME |
2.确认DB_UNIQUE_NAME参数
3.确认LOG_ARCHIVE_CONFIG参数
4.设置数据保护模式
SQL> alter database set standby database to maximize {availability| protection| performance};
5.确认
SQL> SELECT PROTECTION_MODE FROM V$DATABASE;
DG的数据保护模式的更多相关文章
- Oracle DG 三种模式(转)
DG有下面三种模式– Maximum protection– Maximum availability– Maximum performance 在Maximum protection下, 可以保证从 ...
- Oracle DG 三种模式
DG有下面三种模式– Maximum protection– Maximum availability– Maximum performance 在Maximum protection下, 可以保证从 ...
- 验证DG最大性能模式下使用ARCH/LGWR及STANDBY LOG的不同情况
总结: --两台单实例数据库做DG,数据库版本号10.2.0.1.0 1.主库配置为:arch async,备库无STANDBY LOG. 日志中会有:RFS[4]: No standby redo ...
- Oracle 高可用作业测试
1.RAC 是一种: A 分布式数据库B 内存共享多节点数据库C 能够保护数据安全的架构 2.RAC 和CRS 的区别是: A 前者表示一种架构,后者是一套软件B 前者表示一套软件,后者是一种架构 C ...
- 【DG】[三思笔记]一步一步学DataGuard
[DG][三思笔记]一步一步学DataGuard 它有无数个名字,有人叫它dg,有人叫它数据卫士,有人叫它data guard,在oracle的各项特性中它有着举足轻理的地位,它就是(掌声)..... ...
- 【DG】Oracle_Data_Guard官方直译
[DG]Oracle Data Guard官方直译 1 Oracle Data Guard 介绍 Oracle Data Guard概念和管理10g版本2 Oracle Data Guard ...
- oracle12C--DG FAR SYNC 部署(前提为搭建好12C的DG)
<<往期12CDG搭建>> 一,理解同步异步模式 01, 使用LGWR 进程的SYNC 方式 1)Primary Database 产生的Redo 日志要同时写到日志文件和网络 ...
- 测试数据库DG搭建为正式库以后做准备
Data guard 部署 1.系统准备(备库只需建立数据库软件) 两台操作系统 oracle linux 7 Node1 172.16.70.191 Node2 172.16.70.192 Orac ...
- 探索Oracle11gR2 之 DataGuard 三种保护模式
Oracle的DataGuard技术有三种实现模式,分别是max performance.max availability.maxprotection这三种模式. 以下是来自Oracle文档的摘要信息 ...
随机推荐
- 细说ReactiveCocoa的冷信号与热信号(一)
热信号:事件触发: 冷信号:订阅出发: 从本质上来说,是信号的存在和产生,是静态信号和动态信号的区别. 背景 ReactiveCocoa(简称RAC)是最初由GitHub团队开发的一套基于Cocoa的 ...
- 将double数据保留两位小数
private double formatDouble(double number) { DecimalFormat df = new DecimalFormat("#.00"); ...
- python note #1
To record my process of studying python and to practice my English meanwhile, I'd like to start writ ...
- Spring Boot学习总结(1)——Spring Boot入门
摘要:Spring Boots是为了帮助开发人员很容易的创建出独立运行和产品级别的基于 Spring 框架的应用. 从 Spring Boot 项目名称中的 Boot 可以看出来,Spring Boo ...
- CodeForces 400A Inna and Choose Options
Inna and Choose Options Time Limit: 1000ms Memory Limit: 262144KB This problem will be judged on Cod ...
- Oracle拾遗
这次学习Oracle视频.还是学到了不少东西的. 首先,这是一次系统的学习.对自己的知识体系是一次查漏补缺,曾经仅仅是简单的会用,如今看到出的问题,非常easy就能够想到是哪一部分出了问题.尤其是如今 ...
- Raphaeljs入门到精通(一)
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <t ...
- swift 笔记 (十一) —— 方法(类,结构体,枚举)
Methods (方法) 实例方法(Instance Methods) 我认为看到这里.我们唯能八一八的就是swift的自做主张的行为了,反正它就是会以各种方式帮助我们来完毕让代码看起来非常奇怪的事情 ...
- Redis封装之List
/// <summary> /// Redis list的实现为一个双向链表,即可以支持反向查找和遍历,更方便操作,不过带来了部分额外的内存开销, /// Redis内部的很多实现,包括发 ...
- 104.virtual虚函数多态与异构数据结构
#include "mainwindow.h" #include <QApplication> #include <list> #include <Q ...