dg的作用 oracle_oracle rac 物理dg 逻辑 dg 却别 - CSDN
精华内容
参与话题
  • Oracle之ADG与DG的区别?

    千次阅读 2019-07-20 20:07:05
    在上云后的Oracle数据灾备场景中,我们经常听到DBA迁移工程师讲到“在这个项目中用ADG进行数据实时备份,ADG比DG更好!”。究竟ADG作Oracle数据灾备的优势在什么地方? 一、ADG主要解决了DG时代读写不能并行的...

         在上云后的Oracle数据灾备场景中,我们经常听到DBA迁移工程师讲到“在这个项目中用ADG进行数据实时备份,ADG比DG更好!”。究竟ADG作Oracle数据灾备的优势在什么地方?

     

     

    一、ADG主要解决了DG时代读写不能并行的问题

            DG时代的数据同步方式如采用Redo Log的物理方式,则数据库同步数据快、耗用资源低,但存在一个大问题。

            Oracle 11G以前的Data Guard物理备份数据库,可以以只读的方式打开数据,但这时日志的数据同步过程就停止了。而如果日志的数据同步处于执行过程中,则数据库就不能打开。也就是日志读、写两个状态是互相排斥的。而Active Data Guard则是主要解决这个问题。

     

    二、Oracle具有闪回数据库的功能,避免删表等误操作造成无法挽回

            当主数据库打开并处于活动状态时,事务处于处理状态,生成Redo Log数据,并将其传送到备用的数据库中,正常情况下,可以做到秒级的数据同步。但如果在主用数据库上执行一个错误的命令,如drop database,则所有备用数据库中的数据也会被删除。

            Oracle DG提供了易于使用的方式来避免这种用户错误。DBA可以在主数据库、备用数据库中同时使用闪回数据库功能,以快速将数据库恢复到一个较早的时间点上,从而取消这个误操作。

           另外,Oracle还提供了延时执行备份数据库同步的功能,这样又是另一种方式防止误操作。

     

    三、Oracle的DG、RAC一般是联合使用

           RAC主要解决系统应用的故障,它不提供数据故障的快速、自动恢复,它还提供数据库应用的伸缩能力,提供应用级的保护。

            DG只提供数据的备份、恢复能力,提供数据级的保护。

    四、建议使用DG做数据实时同步,而不是第三方的磁盘copy工具

          原因三点:

          1、DG具有延时写入数据功能,可以避免误操作,而第三方工具没有。

          2、DG传输的数据量更小,而第三方工具的所需的带宽更高。

          3、实战中的坑:有些第三方工具的磁盘同步最小单元与Oracle的最小磁盘单元不同,造成异常故障时,备份数据库无法启用,这非常吓人。

     

     

    希望以上文章能帮到您。

    更多内容实时更新,请访问公众号。    

     

    点击这里,获取最高¥1888阿里云产品通用代金券

    展开全文
  • ORACLE DG概念及切换

    万次阅读 2019-01-15 16:02:46
    DG的原理: DG分为物理standy,逻辑standy 物理standy: 物理STANDBY提供与主数据库完全一样的拷贝(块到块),数据库SCHEMA,包括索引都是一样的。它是直接应用REDO实现同步的。 逻辑standy: 逻辑STANDBY则不是...

    DG的原理:

    DG分为物理standy,逻辑standy

    物理standy:

    物理STANDBY提供与主数据库完全一样的拷贝(块到块),数据库SCHEMA,包括索引都是一样的。它是直接应用REDO实现同步的。

    逻辑standy:

    逻辑STANDBY则不是这样,在逻辑STANDBY中,逻辑信息是相同的,但物理组织和数据结构可以不同,它和主库保持同步的方法是将接收的REDO转换成SQL语句,然后在STANDBY上执行SQL语句。逻辑STANDBY除灾难恢复外还有其它用途,比如用于用户进行查询和报表。

    DG三种模式:

    最大保护模式(Maximum protection)  --性能不佳

    alter database set standby database to maximize protection;

    Primary Database上的每个事务的Redo日志必须在本地和Standby Database上都写入日志文件后才能提交,如果不能写入到Standby Database,Primary Database就会自动关闭(挂起)以防止数据丢失。

    最大可用性(Maximum Availability)

    Primary Database每个事务的Redo日志要写到本地和Standby Database中才能提交。

    这个和最大保护模式不同的是,如果写入到Standby Database失败,Primary Database不会自动关闭。这时Primary Database会自动转换为Maximum Performance模式,等待问题解决并且Standby Database再次和Primary Database同步之后,Primary Database会自动的转换为Maximum Availability。

    这种模式要求Standby Database必须配置Standby Redo log,而Primary Database必须配置为LGWR、SYNC、AFFIRM方式归档。

    最大性能(Maximum Performance)

    这个模式是缺省模式,他更加侧重对Primary Database的可用性不造成任何影响。

    Primary Database上的事务的Redo日志只要写到本地日志文件就可以提交,不必等待到Standby Database的传递完成。

    Primary Database的Redo流可以异步的发送到Standby Database。

    这种模式通过LGWR ASYNC或者ARCH实现,Standby Database也不要求使用Standby Redo Log。

    一、检查DG是否正常的四个方法

    1.看备库的告警日志,正在恢复的日志号是否对应得上

    2.看三个进程是否都已经启动

    SQL>select process from v$managed_standby

    主库中显示:

    PROCESS

    ---------

    ARCH

    ARCH

    ARCH

    ARCH

    备库中显示:ARCH、MRPO和RFS 表示正常

    3.先切换一次日志,再进到归档目录里,看两边的归档文件号是否对得上

    4.用命令查看两边归档是否对得上

    SQL> select max(sequence#) from v$archived_log where applied='YES';

    二、切换DG步骤

    关闭:先主库,后备机,开启的时候先开备库启动备库监听,再开主库

    1.先将主库切换成备库,然后将原主库启动到物理库的状态

    SQL> Alter database commit to switchover to physical standby with session shutdown;

    2.关闭主库

    SQL> shutdown immediate

    3.打开数据库nomount

    SQL> startup nomount

    4.更改主库为备库

    SQL> alter database mount standby database;

    SQL> alter database recover managed standby database disconnect from session;

    如果配置了 standby redo log 并需要启用实时同步则执行以下代码

    SQL>alter database recover managed standby database using current logfile disconnect from session;

    5.将备库切换成主库

    SQL> select switchover_status from v$database;

    SQL> select * from v$version where rownum<2;

    SQL> alter database commit to switchover to primary with session shutdown;

    如果备库还有未应用的日志则执行

    SQL>alter database recover managed standby database disconnect from session;

    SQL> shutdown immediate

    SQL> startup

    切换日志进行检查

    SQL> select max(sequence#) from v$log;

    SQL>select sequence#,applied from v$archived_log;

    SQL> alter system switch logfile;

     

    展开全文
  • oracle DG 启动和关闭顺序

    千次阅读 2018-02-26 17:35:16
    启动顺序:先启动备库,后启动主库关闭顺序:先关闭主库,后关闭备库1、正确打开备库和主库备库:SQL&gt; STARTUP MOUNT;SQL&gt;ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;...

    启动顺序:先启动备库,后启动主库

    关闭顺序:先关闭主库,后关闭备库

    1、正确打开备库和主库

    备库:

    SQL> STARTUP MOUNT;

    SQL>ALTER DATABASE RECOVER MANAGED STANDBY DATABASE  DISCONNECT FROM SESSION;

    主库:

    SQL> STARTUP MOUNT;

    SQL> ALTER DATABASE ARCHIVELOG;

    SQL> ALTER DATABASE OPEN;


    2、正确关闭顺序

    主库

    SQL>SHUTDOWN IMMEDIATE;


    备库:

    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;

    SQL>SHUTDOWN IMMEDIATE;

    ############################################################################

    1.  主备切换

     1) 主库切换为备库

     alter database commit to switchover to physical standby;

    主库有会话连接的时候

    alter database commit to switchover to physical standby with session shutdown;

    shutdown immediate

    startup nomount

    alter database mount standby database;

    alter database recover managed standby database disconnect from session;

    2) 从库切换为主库

    alter database commit to switchover to primary;

    shutdown immediate; 

    startup

    alter system switch logfile;

    3) 从库打开只读实时应用模式

    alter database recover managed standby databasecancel; 

    alter database open;

    alter database recover managed standby database using current logfile disconnect;

    4) 检查切换状态

    select open_mode,database_role,db_unique_name from v$database;


    展开全文
  • oracle RAC如何正确地删除ASM磁盘组

    千次阅读 2018-01-20 18:00:04
    1.检查确认要删除的磁盘组是否在用 select * from dba_data_files; select * from dba_temp_files; select * from v$logfile; ...2.先在各节点上dismount磁盘组 ...alter diskgroup REDO01 dismount;...
    1.检查确认要删除的磁盘组是否在用
    select * from dba_data_files;
    select * from dba_temp_files;
    select * from v$logfile;
    2.先在各节点上dismount磁盘组
    alter diskgroup REDO01 dismount;
    alter diskgroup REDO02 dismount;
    alter diskgroup REDODG1 dismount;
    3.ASM中删除磁盘组
    drop diskgroup REDO01 force including contents;
    drop diskgroup REDO02 force including contents;
    drop diskgroup REDODG1 force including contents;
    4.crs删除磁盘组
    crsctl stat res -t  ---查看磁盘组
    srvctl remove diskgroup -g REDO01 -f
    srvctl remove diskgroup -g REDO02 -f
    srvctl remove diskgroup -g REDODG1 -f
    5.更新crs信息
    查看crs依赖的磁盘组:
    crsctl status res ora.veraa.db -f
    START_DEPENDENCIES=hard(ora.testDG1.dg,ora.testDG2.dg,ora.REDODG1.dg,ora.testDG3.dg,ora.REDO01.dg,ora.REDO02.dg,ora.REDODG01.dg) weak(type:ora.listener.type,global:type:ora.scan_listener.type,uniform:ora.ons,global:ora.gns) pullup(ora.testDG1.dg,ora.testDG2.dg,ora.REDODG1.dg,ora.testDG3.dg,ora.REDO01.dg,ora.REDO02.dg,ora.REDODG01.dg)
    START_TIMEOUT=600
    STATE_CHANGE_TEMPLATE=
    STOP_DEPENDENCIES=hard(intermediate:ora.asm,shutdown:ora.testDG1.dg,shutdown:ora.testDG2.dg,shutdown:ora.REDODG1.dg,shutdown:ora.testDG3.dg,shutdown:ora.REDO01.dg,shutdown:ora.REDO02.dg,shutdown:ora.REDODG01.dg)
    修改正确的磁盘组:
    srvctl modify database -d veraa -a "testDG1,testDG2,testDG3,REDODG01" 
    展开全文
  • 1 背景说明 正常情况下,我们在安装Oracle数据库的时候,都会创建一个oracle的用户。 其根目录就是/home/oracle.  并且根据Oracle 的OFA的架构,也是建议使用/u01 这样的目录来单独安装oracle的软件,包括存放数据...
  • Oracle DG环境如何正确地删除Archivelog

    万次阅读 2016-07-31 16:07:05
    清理归档日志最稳妥的原则: 主备库清理归档,都要配置。RMAN> CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON STANDBY;  主库才用备份归档并清理。 备库应该是直接清理! Archivelog并不能直接得从OS层...
  • oracle dg打开备库为读写数据库,慎重!

    千次阅读 2014-08-01 20:05:14
    --确保standby数据库置于flashback on 状态 --设置闪回恢复区 alter system set db_recovery_dest_size=2g; ...alter system set db_recovery_file_dest='+DATA';...alter database recover managed standby d
  • bash: sqlplus: command not found 解决方法

    万次阅读 2017-02-26 18:20:07
    bash: sqlplus: command not found...环境变量已经配好,但是仍报错:[Oracle@dg1 ~]$ vi .bash_profile # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific
  • oracle创建dblink访问Sqlserver数据库

    千次阅读 2018-08-08 16:15:58
    需求:通过在oracle创建dblink的方式直接访问Sqlserver数据库 操作方式:利用Oracle组件,透明网关(Transparent Gateway),建立dblink ,访问SQL SERVER 1.首先在官网上先下载个透明网关。网址(11g): htt...
  • OracleDG三种保护模式及切换方式

    千次阅读 2017-09-19 14:48:29
    一、三种保护方式 Required Redo Transport Attributes for Data Protection Modes Maximum Availability Maximum Performance Maximum Protection AFFIRM NOAFFIRM AFFIRM
  • ORACLE RAC+DG(单实例)

    万次阅读 2019-07-02 14:55:43
    ORACLE RAC+DG(单实例) 前提条件: 1.主库RAC已经成功安装,数据库也已经创建。 2.DG备库已经安装完相同版本的oracle软件,无需创建数据库。 1、RAC开启归档。 任意节点: alter system set log_archive_format='%t_%s...
  • 配置Oracle Gateway 12连接到SQL server 2014

    千次阅读 2016-01-18 16:12:51
    最近的工作中需要基于Oracle连接到SQLserver2014,我们可以通过配置Gateway的方式来实现这个功能。这个Gateway的实质是透过dblink来实现的。即把SQLserver模拟成一个远端的Oracle实例,这个实例由Gateway来负责进行...
  • 有关DG的RFS进程不存在的解决办法

    千次阅读 2015-02-26 16:15:15
    当时有时候备库重新启动归档日志应用 时,发现主机不传日志过来,配置也没改过,网络也是通的,万分不解,查看备库的DG进程,发现没有RFS进程,主库切换日志不起作用。只好重新在主库上声明备机的相关参数,也不知道...
  • Oracle 11g 透明网关

    万次阅读 2015-04-24 20:41:25
    Oracle11g通过透明网关访问SQLServer2008数据
  • DataGuard之DG Broker配置详解

    万次阅读 2017-02-17 09:57:01
    oracle dg datagurad failover swithover broker fsfo
  • Oracle Active DataGurad和Data Guard的区别

    千次阅读 2020-05-25 08:19:45
    以下简称Active Data Guard为ADG,Data Guard为DG。 首先如果用户购买了企业版许可,DG是免费的,而ADG是需要额外付费的数据库选件。 ADG和DG的的架构类似,如下图: ADG是DG的演进,或者说是DG的超集。ADG的主要...
  • ORACLE连接MYSQL-使用DG4ODBC.

    千次阅读 2014-05-23 10:48:37
    最近做了一次Oracle连接到MySQL的实验,主要是通过DG4ODBC来连接的.以下是实验环境和实验步骤. Oracle服务器: IP:192.168.0.193 Database Version:11.2.0.1 MySQL服务器 IP:192.168.0.100 MySQL Version:5.5.18...
  • oracle 11g建立DBLink访问sql server数据库

    万次阅读 2016-09-09 11:43:34
    1.安装oracle数据库(步骤省略)  (IP:172.29.29.36)安装路径:E:\oracle\product\11.2.0\dbhome_1 2.安装oracle gateways透明网关(安装步骤省略)  (IP:172.29.29.36)安装路径:E:\oracle\product\11.2.0\...
1 2 3 4 5 ... 20
收藏数 17,031
精华内容 6,812
关键字:

dg的作用 oracle