There are two types of Standby databases:

1, Physical standby database

block-for-block basis

the physically identical with the primary database

user recovery technology

2, Logical  standby database

shares the same schema definition withe the primary database

executing sql statements on the standby database

use logMiner technology

There are three types of services provided with Data Guard:

1, redo transport services

2, log apply service: including redo apply and SQL apply

3, Role-management services

Oracle Data Guard supports two role-transition operations:

1, Switchover

2, Failover

Oracle Data Guard Data Protection Modes:

1,Maximum Protection

2,Maximum Availability

3,Maximum Performance

Benefits of Implementing Oracle Data Guard:

1,You can use a logical standby for real-time reporting and the physical standby database for point-in-time reporting.

2,Logical standby database is open and ready for reporting at all times.

Note:Standby database can use a different directory structure from the primary database.

On the primary database,Data Guard redo transport services use the following processes:

1,Log Writer(LGWR) process

2,Archiver(ARCn) Process

3,Fetch archive log(FAL)

Note:You can configure a primary database to ship redo information to a single standby database by using either LGWR or ARCn,but not both.

On the standby database,Data Guard log apply services use the following processes:

1,Remote file server(RFS) process

2,Archiver(ARCn) process

3,Managed recovery process(MRP)

4,Logical standby process(LSP)

Standby Redo Logs:

A standby redo log is required to implement:

1, The maximum protection and maximum availability levels of data protection.

2,Real-time apply

3,Cascaded redo log destinations

Standby redo logs are recommended for maximum performance data protection mode

Unless you are using the real-time apply feature,standby redo logs must be archived before the data can be applied to the standby database.

The standby archival operation occurs automatically.

The Data Guard physical standby Redo Apply architecture consists of:

A production(primary) database,which is linked to one or more standby databases(up to nine) that are identical copies of the production database.

--The limit of nine standby databases is imposed by the LOG_ARCHIVE_DEST_n parameter.In Oracle Database 10g,the maximum number of destinations is   10. One is used as the local archive destination,leaving the other nine for uses such as the standby database.

Note: You can use the Cascaded Redo Log Destination feature to incorporate more than nine standby databases in your configuration.

--The primary database is open and active.The standby databases are either in recovery mode or open in read-only mode,but not both.

--Redo is applied to each standby database by using standard Oracle recovery techniques.

Logical Standby Database: SQL Apply Architecture

Instead of using media recovery to apply changes(as in the physical standby database configuration),archived redo log information is transformed

into equivalent SQL statements by using LogMiner technology.These SQL statements are then applied to the logical standby database.The logical

standby database is open in read/write mode and is available for reporting capabilities.

The RECOVERY_MODE column of the V$ARCHIVE_DEST_STATUS view contains the value MANAGED REAL TIME APPLY when log apply services are running in

real-time mode.

For physical standby database,the managed recovery process(MRP) applies the redo from the standby redo log files after the remote file server(RFS) process finishes writing.To start real-time apply for a physical standby database,issue the following command:

alter database recover managed standby database using current logfile;

For logical standby database,the logical standby process(MRP) applies the redo from the standby redo log files after the remote file server(RFS) process finishes writing.To start real-time apply for a logical standby database,issue the following command:

alter database start logical standby apply immediate;

VALID_FOR : ALL_LOGFILES,ALL_ROLES is not recommended setting for a logical standby for any destination.Because a logical standby is an open

database that is creating its own redo, there is a real possibility of having the log files overwrite each other.This gives you a system that is

unrecoverabl and/or unable to keep synchronized with the primary database.

There is only one invalid combination: STANDBY_LOGFILE,PRIMARY_ROLE.

SELECT dest_id,valid_type,valid_role,valid_now from v$archive_dest;

select * from v$standby_log;

select * from v$logfile where type='STANDBY';

Although standby redo logs are used only when the database is operating in the standby role,you should create standby redo logs on the primary

database so that switching roles does not require additional DBA intervention.

You can maintain the standby database in one of the following modes:

For physical standby databases

1,Redo Apply

2,Open read-only mode

For Logical standby databases

Open read/write mode

Data Guard Broker:Requirments

1,Enterprise Edition of Oracle Databae 10g

2,LOCAL_LISTERNER on each instance must resolve to an address that is reachable by all members

3,GLOABL_DBNAME attribute must be set to a concatenation of: db_unique_name_DGMGRL.db_domain

The Data Guard monitor comprises two components: the DMON process and the configuration file.

Data Guard configuration file:

1,default names are dr1<db_unique_name>.dat and dr2<db_unique_name>.dat

2,default location for unix and linux:$ORACLE_HOME/dbs. for windows:ORACLE_HOME\database

startup mount;

alter database force logging; The default value is No.

ARCHIVE_LAG_TARGET: It defines the mean time to failover in the event your primary database fails and you must fail over to the standby.

It likes the parameter of "fast_start_mttr_target"  mttr:mean time to recovery target

The standby_archive_dest initialization parameter overrides the directory locaition that is specified with the LOG_ARCHVIE_DEST_n parameter

if both the parameters are specified. So you should set standby_archive_dest to the same location as the local archvive destination for the

physical standby database so that all necessary archvied redo log files for the standby database are in the same location.

Defining the Redo Transport Mode

Use the attributes of LOG_ARCHIVE_DEST_n

1,ARCH and LGWR

2,SYNC and ASYNC(LGWR only)

3,AFFIRM and NOAFFIRM

(primary)(改动成MAXIMUM PROTECTION)

SQL> alter system set log_archive_dest_2='SERVICE=orcldg LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=orcldg NODELAY MAX_CONNECTIONS=2 REOPEN=300 NOMAX_FAILURE';

(standby)

SQL> alter system set log_archive_dest_2='SERVICE=orclpri LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=orcl NODELAY MAX_CONNECTIONS=2 REOPEN=300 NOMAX_FAILURE';

Redo Transport Mode: ARCH|SYNC|ASYNC

ARCH: You do not need standby redo log files for this mode. This mode enables the lowest grade of protection to the primary database as well as

the lowest performance impact.

ASYNC: (LGWR,ASYNC,NOAFFIRM) This mode,along with standby redo log files,enables a moderate grade of protection to the primary database and incurs a lower performance impact.

SYNC:(LGWR,SYNC,AFFIRM) This mode, along with standby redo log files,is required for the maximum protection or maximum availability protection

modes.This redo transport mode enables the highest grade of data protection to the primary database,but it also incurs the highest performance

impact.

Data Protection Mode:

1,Maximum protection

2,Maximum availability

3,Maximum performance

Logical Standby Database features:

alter database guard all|standby|none; The default value is all,which means only the SYS can modify the data.

Preparing to create a logical standby database:

1,check for unsupported data types

2,Be aware of unspported DDL commands

3,Ensure row uniqueness

4,Verify that the primary database is configured for archivelog mode

5,Enable supplemental logging

Unsupported objects:

1,Tables and sequences in the SYS schema

2,Tables using table compression

3,Tables used to support materialized views

4,Global temporary tables

5,Tables with unsupported data types(BFILE,ROWID and UROWID,User-defiened types,object types REFs,Varrays,Nested tables,XMLtype)

Query DBA_LOGSTDBY_UNSUPPORTED on the primary database for tables with unsupported data types:

Query DBA_LOGSTDB_NOT_UNIQUE on the primary database to find tables without a unique identifier.

Add a primary key or unique index to ensure that SQL apply can efficiently apply data updates.

Preparing to create a logical standby database.Be sure to check that the initialization parameters have the following values:

PARALLEL_MAX_SERVERS>5

LOG_PARALLELISM=1

SHARED_POOL_SIZE:160M or higher(recommended)

Creating a logical Standby database:

1,create a physical standby database

2,stop redo apply on the physical standby database

3,prepare the primary database to support a logical standby database

4,Build a logMiner Dictionary in the redo data

5,convert to a logical standby database

6,open the logical standby database

7,Verify that the logical standby database is performing properly.

Fast-start failover can be enabled for automatic failover

select thread#,low_sequence#,high_sequence# from v$archive_gap;

alter database register physical logfile 'filespec1';

Notes from Data Guard的更多相关文章

  1. Oracle Data Guard的配置

    概述 Oracle Data Guard 是针对企业数据库的最有效和最全面的数据可用性.数据保护和灾难恢复解决方案.它提供管理.监视和自动化软件基础架构来创建和维护一个或多个同步备用数据库,从而保护数 ...

  2. 场景7 Data Guard

    场景7  Data Guard 官方文档 :Oracle Data Guard Concepts and Administration 用于数据容灾,通过主备库同步(主库将redo日志传送到备库,一个 ...

  3. 【原】Configuring Oracle Data Guard In Physical Standby Database

    作者:david_zhang@sh [转载时请以超链接形式标明文章] http://www.cnblogs.com/david-zhang-index/p/5042640.html参照文档:https ...

  4. DG - 开启Active Data Guard

    在配置active data guard之前,phycial standby必须处于以下两个状态之一: (1)standby处于mount状态,并且redo apply正在运行中 (2)standby ...

  5. DATA GUARD架构(一)

    Data Guard传输-应用架构.>图1-1 ------------------------------------------------------------ 重做传输架构>图1 ...

  6. ORACLE 11g 用Duplicate恢复Data Guard 备库详细过程

    1.先查找备库控制文件路径 先在备库上找出控制文件的路径,通过和主库一样,不过为了以防万一,还是check为好. SQL>  select name from v$controlfile; NA ...

  7. Oracle 11gR2 Database和Active Data Guard迁移案例

    客户一套核心系统由一台Oracle Database 11.2.0.3.4单机和一台Active Data Guard组成,分别运行在两台PC服务器上,Oracle Linux 5.8 x86_64b ...

  8. data guard折腾记一

    终于有空闲的机器腾出来了,生产环境上的一套Oracle环境终于可以鸟枪换炮了,生产环境有Data Guard,为了减少停机时间,而且避免重新构建Data Guard的麻烦(其实也不麻烦,就是浪费时间) ...

  9. Oracle Data Guard

    DG 是 Oracle Data Guard 的简称.也就是Oracle11g的 数据卫士. 由于在工作中 Oracle和 SQL SERVER2008 同时都需要维护管理.给我的感觉这里的 DG 其 ...

随机推荐

  1. 洛谷——P1358 扑克牌

    题目描述 组合数学是数学的重要组成部分,是一门研究离散对象的科学,它主要研究满足一定条件的组态(也称组合模型)的存在.计数以及构造等方面的问题.组合数学的主要内容有组合计数.组合设计.组合矩阵.组合优 ...

  2. java 中==符号的坑

    在某技术群看到这样的一个面试题目: 这是一个4年经验的java 从业者的答案. 你的答案是什么呢? 正确的答案是true. 为什么? 其实当使用String a="a"+" ...

  3. 【kd-tree】bzoj3290 Theresa与数据结构

    离线所有操作,对所有可能存在的点建立kd-tree,add相当于权值+1,cancel相当于权值-1. 修改操作要记录kd-tree上每个点的fa,从底向上地进行修改. 优化:若一个矩形框的sumv= ...

  4. 【二分法】【尺取法】bzoj2348 [Baltic 2011]Plagiarism

    一开始以为死于精度……调了半天发现死于long long…… 一.二分法: #include<cstdio> #include<cstring> #include<alg ...

  5. TZOJ 数据结构实验:创建单链表

    描述 实现一个函数CreateLinkList,能够完成不带头节点链表的创建. 部分代码已经给出,请补充完整,提交时请勿包含已经给出的代码. void PrintLinkList(Node *head ...

  6. [OpenJudge8471][划分DP]切割回文

    切割回文 总时间限制: 1000ms 内存限制: 65536kB [描述] 阿福最近对回文串产生了非常浓厚的兴趣. 如果一个字符串从左往右看和从右往左看完全相同的话,那么就认为这个串是一个回文串.例如 ...

  7. 动态规划之DP中判断是否到达某一状态(最短时间是什么)?

    codevs1684 垃圾陷阱  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold   题目描述 Description 卡门——农夫约翰极其珍视的一条Holste ...

  8. Douglas Peucker算法的C#实现

    一.算法原理 Douglas-Peucker算法 在数字化过程中,需要对曲线进行采样简化,即在曲线上取有限个点,将其变为折线,并且能够在一定程度 上保持原有的形状. 经典的Douglas-Peucke ...

  9. 开源的库RestSharp轻松消费Restful Service

    现在互联网上的服务接口都是Restful的,SOAP的Service已经不是主流..NET/Mono下如何消费Restful Service呢,再也没有了方便的Visual Studio的方便生产代理 ...

  10. 直接拿来用!最火的iOS开源项目(二)

    每一次的改变总意味着新的开始.”这句话用在iOS上可谓是再合适不过的了.GitHub上的iOS开源项目数不胜数,iOS每一次的改变,总会引发iOS开源项目的演变,从iOS 1.x到如今的iOS 7,有 ...