dg同步延迟 oracle - CSDN
精华内容
参与话题
  • Oracle Data Guard延迟的原因

    千次阅读 2017-04-01 16:57:11
    Oracle Data Guard中很可能出现延迟的情况,而数据一旦出现延迟就意味着丢数据。退一步来说丢数据总比数据乱了好,但是回过头来,能不丢数据但是丢了,这就有些说不过去了。 因为预防人为误操作等,可能有些环境中会...
    
    

    Oracle Data Guard中很可能出现延迟的情况,而数据一旦出现延迟就意味着丢数据。退一步来说丢数据总比数据乱了好,但是回过头来,能不丢数据但是丢了,这就有些说不过去了。

    因为预防人为误操作等,可能有些环境中会特意设置一个延迟,基本就是下面的设置方法:

    方法1:

    alter database recover managed standby database delay 120 disconnect from session;

    方法2

    alter system set log_archive_dest_3='service=db3 lgwr async delay=120 valid_for=(all_logfiles,all_roles)db_unique_name=db3';

    我们这里所说的延迟是计划外的延迟,比如一个ADG的环境,案例应该是实时同步,但是却有数据同步出现延迟的情况。我自己碰到一些,还帮网友处理过几次。

    大体来说,10g和11g中的数据同步延迟场景还不大一样。

    在10g中如果一主两备的架构下,如果备1是在read only状态,则整个数据同步还是会延迟,需要手工切换日志才能增量同步。

    在11g中,倒不存在这样的限制了,因为是Active Data Guard的方式,所以可以在read only的基础上接收应用增量数据变化。但是延迟的问题依旧可能存在。

    我一个例子来说明,简单来说,如何判断一个Data Guard是Active Data Guard呢,可以用一个SQL语句来判定。

    10:27:21 SQL>select current_scn from v$database;
    CURRENT_SCN
    232913508003
    10:27:22 SQL> /
    CURRENT_SCN
    232913508005
    随着时间的变化,SCN会发生变化,这和10g是一个鲜明的对比。
    而如果Data Guard环境出现延迟,如果通过DG Broker来查看,基本就是下面的显示情况。

    DGMGRL> show database verbose sol;
    Role: PHYSICAL STANDBY
    Intended State: APPLY-ON
    Transport Lag: 3 minutes 37 seconds
    Apply Lag: 3 minutes 37 seconds
    Real Time Query: ON
    同时在备库的alert日志中查看却似乎看不出什么特别之处。我碰到一个环境,数据延迟时好时坏,很不稳定,听起来很棘手,我们来简单看看。

    日志如下:

    RFS[1]: Opened log for thread 1 sequence 476185 dbid 1210367666 branch 622336050
    Wed Feb 08 11:55:23 2017
    Media Recovery Log /U01/app/oracle/oradata/sol/arch/SOL/archivelog/2017_02_08/o1_mf_1_476184_d9o2rzdc_.arc
    Media Recovery Waiting for thread 1 sequence 476185 (in transit)
    出现这种情况,基本可以断定是差一个归档。

    我们看看主备库的日志文件的情况。
    查看备库的standby log情况:

    SQL> select group#,bytes from v$standby_log;
    GROUP# BYTES
    ---------- ----------
    21 524288000
    22 524288000
    。。。

    主库的online log情况:

    SQL> select group#,bytes,status from v$log
    GROUP# BYTES STATUS
    ---------- ---------- ----------------
    1 209715200 INACTIVE
    2 209715200 INACTIVE
    3 209715200 INACTIVE
    4 209715200 INACTIVE
    5 209715200 INACTIVE
    6 209715200 INACTIVE
    7 524288000 INACTIVE
    8 629145600 INACTIVE
    9 1073741824 CURRENT
    10 1073741824 INACTIVE
    如果到了这里,想必就会清晰很多了,主库中的online log大小不一,看起来是经过了多次设置,估计最开始设置为200M,感觉有些小了,后面改进,设置成了500M,估计还是差强人意,就改成了1G。其实这个日志是可以做调整设置的,而不是一锤子买卖,肯定能修改。
    如果出现延迟,很可能就是和日志的大小情况有关,主库的小,备库的大,暂时不会出现问题,如果主库的大,备库的小,那就有问题,或者备库没有standby log,也是如此。

    一个较为正常的备库的alert日志情况如下,假设归档设置是默认的情况下。会有下面的额外两行尤其需要关注,你可以看到standby log被引用。

    RFS[1]: Selected log 23 for thread 1 sequence 476186 dbid 1210367666 branch 622336050
    Media Recovery Log /U01/app/oracle/oradata/sol/arch/SOL/archivelog/2017_02_08/o1_mf_1_476185_d9o5ocmt_.arc
    Wed Feb 08 14:14:06 2017
    Media Recovery Waiting for thread 1 sequence 476186 (in transit)
    Recovery of Online Redo Log: Thread 1 Group 23 Seq 476186 Reading mem 0

    Mem# 0: /U01/app/oracle/oradata/sol/arch/SOL/onlinelog/o1_mf_23_d9ofo81j_.log

    所以说,任何看起来复杂的问题的原因都会很简单,明确了问题,解决起来就会得心应手。

    展开全文
  • 理解standby redo log

    千次阅读 2016-08-14 16:44:24
    在创建Oracle Dataguard的时候,难免会碰到Standby Redo Log(SRL),它和ORL到底有何不同,下面是我自己的一点理解,大部分都是翻的Oracle官方文档: 1. SRL只有在数据库是standby角色是才起作用,Oracle建议我们...

    在创建Oracle Dataguard的时候,难免会碰到Standby Redo Log(SRL),它和ORL到底有何不同,下面是我自己的一点理解,大部分都是翻的Oracle官方文档:

    1. SRL只有在数据库是standby角色是才起作用,Oracle建议我们为primary也配置SRL只是为了以后主从切换时不用人为干预

    2. standby上SRL完全等同与primary上的ORL,在primary发生日志切换时,Remote File System(RFS)进程把primary上的ORL写到standby的SRL,同时standby归档上一个SRL

    3. standby通过应用并归档SRL以达到与primary一致。


    如果standby log应用服务会等待单个归档文件全部接收之后再启动应用(在前面redo传输服务中我们介绍了不同形式的传输方式),如果standby端使 用了standby redologs,就可以打开实时应用(real-time apply),这样dg就不需要再等待接收完归档文件,只要rfs将 redo数据写入standby redologs,即可通过MRP/LSP实时写向standby。



    物理standby启用实时应用通过下列语句:
    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE ;


    逻辑standby启用实时应用通过下列语句:
    SQL> ALTER DATABASE START LOGICAL STANDBY APPLY IMMEDIATE;


    2、REDO数据延迟应用
    有 实时就有延迟,某些情况下你可能不希望standby与primary太过同步:),那就可以在log_archive_dest_n参数中指定 delay属性(单位为分钟,如果指定了delay属性,但没有指定值,则默认是30分钟)。注意,该属性并不是说延迟发送redo数据到standby,而是指明归档到standby后,开始应用的时候。


    不过,即使在log_archive_dest_n中指定了delay属性,但如果你应用数据时指定了实时应用,则standby会忽略delay属性。另外Oracle 11g,standby端还可以通过下列的语句取消延迟应用。


    物理standby取消延迟应用可以通过下列语句:
    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE NODELAY;


    逻辑standby取消延迟应用可以通过下列语句:
    SQL> ALTER DATABASE START LOGICAL STANDBY APPLY NODELAY;


    提示:flashback database也可视为延迟应用的一种方式。


    二、应用redo数据到物理standby
    注意:启动redo应用,物理standby需要首先启动到mount状态,然后再执行下列语句启动,或者停止redo应用。
    1、启动redo应用
    v 前台应用
    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE;


    v 后台应用
    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT;Oracle数据库


    v 启动实时应用,附加USING CURRENT LOGFILE子句即可
    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE;


    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL; 停止redo应用
    展开全文
  • Oracle GoldenGate 详解

    万次阅读 2019-06-21 10:18:42
    GoldenGate 能够实现大量交易数据的实时捕捉、变换和投递,实现源数据库与目标数据库的数据同步,保持亚秒级的数据延迟。 1、应用场景 1)高可用容灾 2)数据库迁移、升级(支持跨版本、异构数据库、零宕机时间、...

    一、Oracle GoldenGate介绍

      GoldenGate软件是一种基于日志的结构化数据复制软件。GoldenGate 能够实现大量交易数据的实时捕捉、变换和投递,实现源数据库与目标数据库的数据同步,保持亚秒级的数据延迟。

     

    1、应用场景

    1)高可用容灾

    2)数据库迁移、升级(支持跨版本、异构数据库、零宕机时间、亚秒级恢复)

    3)实时数据集成(支持异构数据库、多源数据库)

     

    2、常用拓扑

    (下图来自网络)

     

    3、支持的平台和数据库

    我这边几年前做过oracle到mysql的同步,也作过mysql到mysql的同步(支持不是很好,而且有DDL和DML的限制、字段类型限制等)

    (下图来自网络)

     

    4、OGG同步原理

    源端通过抽取进程提取redo log或archive log日志内容,通过pump进程(TCP/IP协议)发送到目标端,最后目标端的rep进程接收日志、解析并应用到目标端,进而完成数据同步。

     

    5、OGG相关进程

    GoldenGate主要包含Manager进程、Extract进程、Pump进程、Replicat进程

    1)Manager进程

    不管是源端还是目标端必须并且只能有一个Manager进程,可以启动、关闭、监控其他进程的健康状态,报告错误事件、分配数据存储空间,发布阀值报告等。

    2)Extract 进程

    运行在数据库源端,负责从源端数据表或日志中捕获数据,然后捕获到的将写到本地trail文件。 想要复制的对象数据发生改变时,Extract进程 就会进行捕捉,当事务提交时,所有和该事务相关的日志记录被以事务为单元顺序的记录到trail文件中。Extract进程利用其内在的checkpoint机制,周期性的记录其读写的位置,实现断点同步。

    Extract其实有两种捕获模式

    A.传统模式

    抽取方式:基于在线日志或归档日志进行抽取

    B.Integrated模式( Oracle Goldengate 11g版本)

    抽取方式: Logmining server负责以LCR格式从数据库日志中捕获数据变化,extract进程再将这些数据存入 trail文件。

    传统模式是大家非常熟悉的模式啦,平时搭建的都是传统模式。但是Integrated模式是Oracle Goldengate 11g版本才出现的,很多人会比较陌生,有兴趣的朋友也可以去了解一番。

    3)Pump进程(可选)

    运行在数据库源端, 其作用是将源端产生的本地trail文件,把trail以数据块的形式通过TCP/IP 协议发送到目标端。

    但是如果如果不使用trail文件,那么extract进程在抽取完数据以后,直接投递到目标端,生成远程trail文件,那么这时候,Pump进程就可以不用配置(存在)了。

    4)Replicat进程

    运行在数据库目标端 ,负责读取源端传送到目标端的trail文件中的内容,并将其解析为DML或 DDL语句, 然后应用到目标数据库中。

    Replicat两种模式

    A.传统模式:基于sql交付,最常用的一种方式

    B.Integrated模式(OGG12c)

    对应这种模式,官方文档是这样描述的

    Replicat 操作的过程如下:

    读取源端传输过来的 trail 文件;执行data 数据过滤和转换操作;

    DML操作:根据commit顺序,构造LCR;DDL 操作:Replicat 进程直接apply;

    Replicat 通过lightweight streaming 接口和目标库后台进程(Database inbound server)建立 连接;

    将LCR传输到inbound server,然后apply 这些数据到目标数据库。

    两个Apply Servers的Integrated模式

    其实对于进程的Capture and Apply Modes可以参考一下官方文档:

    http://docs.oracle.com/goldengate/1212/gg-winux/GIORA/process_mode.htm#GIORA554

    5)Server Collector进程

    运行于目标端,作用就是把Extract/Pump进程投递过来的数据块重新组装成Trail文件。运行期间无需任何配置。是一个完全自动的进程

    好了对GoldenGate的进程介绍到处就告一段落了。

    6、OGG相关目录

    dirbdb
    dirchk:检查点文件,记录了该进程的检查点信息
    dircrd
    dirdat:trail日志文件,存放收取接手的日志文件
    dirdef:用来存放通过DEFGEN工具生成的源或目标端数据定义文件
    dirdmp
    dirout
    dirpcs:用来存放进程状态文件
    dirprm:用来存放参数文件,该进程所配置的参数(edit param 进程组名   就是配置该文件)
    dirrpt:用来存放进程报告(report)文件,可以查看该进程运行时的报错信息等(view report 进程组名  就是看该文件)
    dirsql:用来存放SQL脚本文件
    dirtmp:当事物所需要的内存超过已分配内存时,缺省存在此目录
    dirwlt
    dirwww

    二、Oracle GoldenGate安装

    1、安装环境

     

    源端

    目标端

    IP地址

    10.20.11.176

    10.20.32.23

    操作系统

    RHEL6.6_X64

    RHEL6.6_X64

    数据库

    ORACLE_11.2.0.4

    ORACLE_11.2.0.4

    OGG

    Version 12.2.0.1.1

    Version 12.2.0.1.1

    2、OGG下载

    http://www.oracle.com/technetwork/middleware/goldengate/downloads/index.html
    http://download.oracle.com/otn/goldengate/12301/123012_fbo_ggs_Linux_x64_shiphome.zip

    3、OGG安装

    1)源端:

    tnsname配置

    开启归档等

    复制代码

    archive log list
    alter database add supplemental log data; 
    select supplemental_log_data_min from v$database;  
    alter database force logging; (不是必须)
    alter system set recyclebin=off;(更好的支持DDL)
    show parameter recyclebin;
    备注: 在oracle中可以通过rowid来定位某条记录,但是目标端的数据库和源端数据库的数据库可能完全不一样,所以无法通过rowid来确定源端数据库的逻辑变化,
    这时附加日志supplemental log便登上了表演的舞台。数据库在开启附加日志功能后,对于源端的修改操作,oracle会同时追加能够唯一标示记录的列到redo log。
    这样目标端数据库就可以知道源端发生了哪些具体的变化。

    复制代码

    ogg安装(略)

    2)目标端:

    tnsname配置

    开启归档等

    ogg安装

    复制代码

    [root@node1 oracle]# unzip 123012_fbo_ggs_Linux_x64_shiphome.zip  
    [root@node1 oracle]# mv fbo_ggs_Linux_x64_shiphome  /home/oracle/ogg_install
    [root@node1 oracle]# chown -R oracle:oinstall /home/oracle/ogg_install
    [oracle@node1 response]$ vi /home/oracle/ogg_install/Disk1/response/oggcore.rsp 
    
    INSTALL_OPTION=ORA11g
    SOFTWARE_LOCATION=/home/oracle/ogg_install
    START_MANAGER=false
    MANAGER_PORT=
    DATABASE_LOCATION=
    INVENTORY_LOCATION=/home/oracle/ogg_install/ogg_log
    UNIX_GROUP_NAME=oinstall
    
    [oracle@node1 Disk1]$ ./runInstaller -silent -responseFile /home/oracle/ogg_install/Disk1/response/oggcore.rsp 

    复制代码

     至此OGG软件安装成功,为方便管理OGG可以设置环境变量

    [oracle@node1 ogg_install]$ vi ~/.bash_profile

    PATH=$PATH:$HOME/bin:/home/oracle/ogg_install

    [oracle@node1 ogg_install]$ source ~/.bash_profile

    复制代码

    [oracle@node1 ~]$ ggsci
    
    Oracle GoldenGate Command Interpreter for Oracle
    Version 12.3.0.1.2 OGGCORE_12.3.0.1.0_PLATFORMS_171208.0005_FBO
    Linux, x64, 64bit (optimized), Oracle 11g on Dec  8 2017 21:13:00
    Operating system character set identified as UTF-8.
    
    Copyright (C) 1995, 2017, Oracle and/or its affiliates. All rights reserved.
    
    
    
    GGSCI (node1) 1> create subdirs  
    
    Creating subdirectories under current directory /home/oracle
    
    Parameter file                 /home/oracle/ogg_install/dirprm: created.
    Report file                    /home/oracle/ogg_install/dirrpt: created.
    Checkpoint file                /home/oracle/ogg_install/dirchk: created.
    Process status files           /home/oracle/ogg_install/dirpcs: created.
    SQL script files               /home/oracle/ogg_install/dirsql: created.
    Database definitions files     /home/oracle/ogg_install/dirdef: created.
    Extract data files             /home/oracle/ogg_install/dirdat: created.
    Temporary files                /home/oracle/ogg_install/dirtmp: created.
    Credential store files         /home/oracle/ogg_install/dircrd: created.
    Masterkey wallet files         /home/oracle/ogg_install/dirwlt: created.
    Dump files                     /home/oracle/ogg_install/dirdmp: created.

    复制代码

    至此真正的OGG安装完毕,可以进行下面的数据同步部署了。

    三、Oracle GoldenGate数据同步

     1、源端配置

    1)创建数据同步用户、表空间

    复制代码

    SQL> create tablespace ogg_tbs datafile '/U01/app/oracle/oradata/testdb/ogg_data.dbf' size 30M autoextend on next 10M;
    
    Tablespace created.
    
    SQL> create user ogguser identified by "ogguser";
    
    User created.
    
    SQL> alter user ogguser default tablespace ogg_tbs;
    
    User altered.
    
    SQL> grant create session to ogguser;
    
    Grant succeeded.
    
    SQL> grant dba to ogguser;
    
    Grant succeeded.

    复制代码

    2)更改相关数据库配置

    归档检查和更改:

    复制代码

    SQL> archive log list
    
    Database log mode              Archive Mode
    Automatic archival             Enabled
    Archive destination           /oracle/archivelog
    Oldest online log sequence     180
    Next log sequence to archive   181
    Current log sequence           181
    
    若处于非归档模式,则改为归档模式:
    SQL> shutdown immediate
    Database closed.
    Database dismounted.
    ORACLE instance shut down.
    SQL> startup mount;
    ORACLE instance started.
    SQL> alter database archivelog;
    Database altered.
    SQL> alter database open;
    Database altered.

    复制代码

    force_logging开启

    复制代码

    SQL> select force_logging from v$database;
    FOR
    ---
    NO
    SQL> alter database force logging;
    Database altered.
    SQL> select force_logging from v$database;
    FOR
    ---
    YES 

    复制代码

    supplemental log开启

    复制代码

    SQL> select supplemental_log_data_min from v$database;
    SUPPLEME
    --------
    NO
    
    SQL> alter database add supplemental log data;
    Database altered.
    
    ##切换日志,使更改生效
    
    SQL> alter system switch logfile;
    System altered.
    
    SQL> select supplemental_log_data_min from v$database;
    SUPPLEME
    --------
    YES 

    复制代码

    关闭回收站(10g需要,11g可以不关闭)

    复制代码

    SQL> show parameter recyclebin
    
    NAME TYPE VALUE
    ------------------------------------ ----------- ------------------------------
    recyclebin string on
    
    
    SQL> alter system set recyclebin=off;
    
    System altered.
    
    SQL> show parameter recyclebin
    
    NAME TYPE                                VALUE
    ------------------------------------ -------------------------------
    recyclebin string                          OFF

    复制代码

    3)配置manager进程

    GGSCI (dg) 1> edit params mgr

    复制代码

    port 7809
    DYNAMICPORTLIST 7810-7880
    --AUTORESTART ER *,RETRIES 5,WAITMINUTES 7
    PURGEOLDEXTRACTS ./dirdat/*,usecheckpoints, minkeepdays 7
    LAGREPORTHOURS 1
    LAGINFOMINUTES 30
    LAGCRITICALMINUTES 45

    复制代码

    复制代码

    MANAGER进程参数配置说明:
    PORT:指定服务监听端口;这里以7839为例,默认端口为7809
    DYNAMICPORTLIST:动态端口:可以制定最大256个可用端口的动态列表,当指定的端口不可用时,管理进程将会从列表中选择一个可用的端口,源端和目标段的Collector、Replicat、GGSCI进程通信也会使用这些端口;
    COMMENT:注释行,也可以用--来代替;
    AUTOSTART:指定在管理进程启动时自动启动哪些进程;
    AUTORESTART:自动重启参数设置:本处设置表示每7分钟尝试重新启动所有EXTRACT进程,共尝试5次;
    PURGEOLDEXTRACTS:定期清理trail文件设置:本处设置表示对于超过7天的trail文件进行删除。
    LAGREPORT、LAGINFO、LAGCRITICAL:
    定义数据延迟的预警机制:本处设置表示MGR进程每隔1小时检查EXTRACT的延迟情况,如果超过了30分钟就把延迟作为信息记录到错误日志中,如果延迟超过了45分钟,则把它作为警告写到错误日志中。

    复制代码

    4)配置extract进程

    ogg 12版本可创建用户别名:

    复制代码

    [oracle@dg ogg]$ ggsci  
    GGSCI (dg) 3> add credentialstore
    Credential store created in ./dircrd/.
    GGSCI (dg) 4> alter credentialstore add user  gguser alias ogguser
    Password: 
    
    Credential store in ./dircrd/ altered.
    --这里就可以使用别名登录  (正常用户名密码 dblogin userid ggs,password ggs)
    
    GGSCI (dg) 3> dblogin useridalias ogguser
    Successfully logged into database.

    复制代码

    复制代码

    GGSCI (dg) 5> add extract EXT01,tranlog,begin now
    EXTRACT added.
    ###可以通过命令add extract EXT01,tranlog,begin 2018-05-06 08:05:14,制定开始抽取的日志时间
    
    GGSCI (customerdg) 6> edit params EXT01
    
    ##extract配置文件内容如下
    
    EXTRACT ext01
    SETENV (ORACLE_HOME="/U01/app/oracle/product/11.2.0.4")
    setenv (NLS_LANG="AMERICAN_AMERICA.AL32UTF8")
    setenv (ORACLE_SID="testdb")
    useridalias ogguser
    GETTRUNCATES
    REPORTCOUNT EVERY 1 MINUTES, RATE
    DISCARDFILE ./dirrpt/ext01.dsc,APPEND,MEGABYTES 1000
    
    WARNLONGTRANS 2h,CHECKINTERVAL 10m
    EXTTRAIL ./dirdat/ex
    
    TRANLOGOPTIONS EXCLUDEUSER gguser
    TRANLOGOPTIONS MINEFROMACTIVEDG
    DBOPTIONS ALLOWUNUSEDCOLUMN
    DYNAMICRESOLUTION
    
    FETCHOPTIONS FETCHPKUPDATECOLS
    
    --table
    table CUSTOMER.t_t1;
    table CUSTOMER.t_t2;
    table CUSTOMER.t_t3;

    复制代码

    添加该extract对应的trail文件,用来存储抽取的数据。单个文件大小设置为100MB

    GGSCI (dg) 1> add exttrail /home/oracle/ogg_install/dirdat/ex,extract ext01 MEGABYTES 100
    
    EXTTRAIL added.

     

    5)配置pump进程

    为了避免primary extract受到网络的影响,我们在源端和目标端之间增加一个data pump,这样的话,primary extract负责将数据从源数据中抽取出来,存在本地的trail文件中,然后data pump进程负责将本地trail文件中的数据传输到目标端的trail文件里。这样能提高更高的灵活性和可用性(当源和目标端之间的网络出现故障时,primary extract会继续抽取数据存到本地的trail中)

    复制代码

    GGSCI (dg) 5> edit params pump01
    
    EXTRACT pump01
    RMTHOST 10.20.32.23, MGRPORT 7809, compress
    PASSTHRU
    RMTTRAIL /home/oracle/ogg_install/dirdat/rt
    DYNAMICRESOLUTION
    
    --table
    table CUSTOMER.t_t1;
    table CUSTOMER.t_t2;
    table CUSTOMER.t_t3;
    
    
    GGSCI (dg) 14> add extract pump01,exttrailsource ./dirdat/ex
    EXTRACT added.
    GGSCI (dg) 15> add rmttrail  /home/oracle/ogg_install/dirdat/rt,extract pump01
    RMTTRAIL added.

    复制代码

     

    2、目标端配置

    1)创建数据同步用户、表空间

    复制代码

    SQL> create tablespace ogg_tbs datafile '/U01/app/oracle/oradata/testdb/ogg_data.dbf' size 30M autoextend on next 10M;
    
    Tablespace created.
    
    SQL> create user ogguser identified by "ogguser";
    
    User created.
    
    SQL> alter user ogguser default tablespace ogg_tbs;
    
    User altered.
    
    SQL> grant create session to ogguser;
    
    Grant succeeded.
    
    SQL> grant dba to ogguser;
    
    Grant succeeded.

    复制代码

    2)归档开启

    3)配置manager进程

    复制代码

    GGSCI (node1) 1>  add credentialstore
    
    Credential store created.
    
    GGSCI (node1) 2> alter credentialstore add user  ogguser alias ogguser
    Password: 
    
    Credential store altered.
    
    GGSCI (node1) 3> dblogin useridalias ogguser
    Successfully logged into database.

    复制代码

    GGSCI (node1 as ogguser@testdb) 4> edit params mgr

    复制代码

    port 7809
    DYNAMICPORTLIST 7810-7880
    --AUTORESTART ER *,RETRIES 5,WAITMINUTES 7
    PURGEOLDEXTRACTS ./dirdat/*,usecheckpoints, minkeepdays 7
    LAGREPORTHOURS 1
    LAGINFOMINUTES 30
    LAGCRITICALMINUTES 45

    复制代码

    复制代码

    GGSCI (node1) 1> start mgr
    Manager started.
    
    GGSCI (node1) 2> info all
    
    Program     Status      Group       Lag at Chkpt  Time Since Chkpt
    
    MANAGER     RUNNING 

    复制代码

     

    4)配置replicate进程

    复制代码

    REPLICAT rep01
    SETENV (ORACLE_HOME="/U01/app/oracle/product/11.2.0.4")
    setenv (NLS_LANG="AMERICAN_AMERICA.AL32UTF8")
    setenv (ORACLE_SID="testdb")
    useridalias ogguser
    REPORT AT 01:59
    REPORTCOUNT EVERY 30 MINUTES, RATE
    REPERROR DEFAULT, ABEND
    
    HANDLECOLLISIONS
    assumetargetdefs
    DISCARDFILE ./dirrpt/rep01.dsc, APPEND, MEGABYTES 1000
    GETTRUNCATES
    ALLOWNOOPUPDATES
    
    --table
    map gguser.t_t1,    target gguser.t_t1; 
    map gguser.t_t2,      target gguser.t_t2;   
    map gguser.t_t3,      target gguser.t_t3;

    复制代码

    5)、添加checkpoint表

    GGSCI (node1) 5> dblogin useridalias ogguser
    Successfully logged into database.
    
    GGSCI (node1 as ogguser@testdb) 6> add checkpointtable ogguser.checkpointtab
    
    Successfully created checkpoint table ogguser.checkpointtab.
    GGSCI (node1 as ogguser@testdb) 7> add replicat rep01,exttrail   /home/oracle/ogg_install/dirdat/rt,checkpointtable ogguser.checkpointtab
    REPLICAT added.

    3、源端进程启动

    1)源端启动mgr进程、extract进程、pump进程

    复制代码

    GGSCI (dg) 20> start mgr
    Manager started.
    
    GGSCI (dg as gguser@testdb) 9> start ext01
    Sending START request to MANAGER ...
    EXTRACT EXT01 starting
    
    GGSCI (dg as gguser@testdb) 12> start PUMP01
    
    Sending START request to MANAGER ...
    EXTRACT PUMP01 starting
    
    GGSCI (dg as gguser@testdb) 14> info all
    
    Program     Status      Group       Lag at Chkpt  Time Since Chkpt
    
    MANAGER     RUNNING                                           
    EXTRACT     RUNNING     EXT01       00:00:03      00:00:03    
    EXTRACT     RUNNING     PUMP01      00:00:00      00:00:08  

    复制代码

    4、数据库初始化

    1)源端导出数据

    ##创建导出文件目录、查看到处点SCN

    复制代码

    select * from dba_directories; 
    create directory DATA_PUMP_DIR as '/U01/oracle/oggdump';
    
    col  CURRENT_SCN  format 999999999999999999999999;
    set line 200;
    set pagesize 20000;
    
    select current_scn from v$database;
    select dbms_flashback.get_system_change_number current_scn from dual;

    复制代码

    ##导出表数据

    复制代码

    ##只导出数据
    expdp \'/ as sysdba\' directory=DATA_PUMP_DIR file=20180506.dmp tables=ogguser.t_t1,ogguser.t_t2,ogguser.t3  grants=n statistics=none triggers=n compress=n content=data_only FLASHBACK_SCN=54995990597  log=expdp.log
    
    ##只导出表结构
    expdp \'/ as sysdba\' directory=DATA_PUMP_DIR file=20180506.dmp tables=ogguser.t_t1,ogguser.t_t2,ogguser.t3  grants=n statistics=none triggers=n compress=n content=METADATA_ONLY FLASHBACK_SCN=54995990597  log=expdp.log
    ##导出表结构和数据
    expdp \'/ as sysdba\' directory=DATA_PUMP_DIR file=20180506.dmp tables=ogguser.t_t1,ogguser.t_t2,ogguser.t3  grants=n statistics=none triggers=n compress=n  FLASHBACK_SCN=54995990597  log=expdp.log

    复制代码

    2)目标端数据导入

    ##若表结构事前没有创建好,需要表结构和表数据一起导入,若表结构已创建,只需要导入表数据即可

    复制代码

    ##导入表数据
    impdp \'/ as sysdba\' DIRECTORY=DATA_PUMP_DIR  DUMPFILE=20180506.dmp    REMAP_SCHEMA=source_user:target_user content=data_only LOGFILE=impdp.log      
    ##导入表结构
    impdp \'/ as sysdba\' DIRECTORY=DATA_PUMP_DIR  DUMPFILE=20180506.dmp    REMAP_SCHEMA=source_user:target_user content=METADATA_ONLY LOGFILE=impdp.log               
    ##导入表结构和数据
    impdp \'/ as sysdba\' DIRECTORY=DATA_PUMP_DIR  DUMPFILE=20180506.dmp    REMAP_SCHEMA=source_user:target_user  LOGFILE=impdp.log                      

    复制代码

    5、目标端进程启动

    目标端启动mgr、replicate进程

    复制代码

    GGSCI (node1 as ogguser@testdb) 9> start mgr
    Manager started.
    
    GGSCI (node1) 2> start rep01,aftercsn 54995990597
    
    Sending START request to MANAGER ...
    REPLICAT REP01 starting
    
    GGSCI (node1) 4> info all
    
    Program     Status      Group       Lag at Chkpt  Time Since Chkpt
    
    MANAGER     RUNNING                                           
    REPLICAT    RUNNING     REP01       00:00:00      00:00:00   

    复制代码

     

    四、Oracle GoldenGate管理

    1、进程启动、关闭以及状态查看

    启动:

    复制代码

    GGSCI (node1) 1> start mgr
    Manager started.
    
    ##可以通过SCN启动
    start rep01,aftercsn 54995990597
    ##可以通过时间启动
    add extract EXT01,tranlog,begin 2018-05-06 08:05:14
    

    复制代码

     关闭:

    复制代码

    GGSCI (node1) 3> stop mgr
    Manager process is required by other GGS processes.
    Are you sure you want to stop it (y/n)?yes
    
    Sending STOP request to MANAGER ...
    Request processed.
    Manager stopped.

    复制代码

     状态查看:

    复制代码

    GGSCI (node1) 1> info all
    
    Program     Status      Group       Lag at Chkpt  Time Since Chkpt
    
    MANAGER     RUNNING                                           
    REPLICAT    STOPPED     REP01       00:00:00      00:14:29    
    
    GGSCI (node1) 2> info rep01
    
    REPLICAT   REP01     Initialized   2018-05-04 16:29   Status STOPPED
    Checkpoint Lag       00:00:00 (updated 00:14:51 ago)
    Log Read Checkpoint  File /home/oracle/ogg_install/dirdat/rt000000000
                         First Record  RBA 0

    复制代码

     2、进程添加、编辑、删除、配置文件查看

    进程文件添加:

    复制代码

    ##抽取进程
    add extract ext5,tranlog,begin now
    add exttrail  /usr/local/mysql/ogg/dirdat/ex,extract ext5
    ##pump进程
    add extract pump01,exttrailsource  /usr/local/mysql/ogg/dirdat/ex
    add rmttrail /oracle/app/ogg/dirdat/pt,extract pump5
    ##检查点
    add checkpointtable ogg.checkpointtab
    add replicat rep2,exttrail   /oracle/app/ogg/dirdat/pt,checkpointtable ogg.checkpointtab
    ##别名
    add credentialstore
    alter credentialstore add user  ogguser alias ogguser

    复制代码

     文件编辑:

    复制代码

    ##管理进程文件
    edit params mgr
    ##抽取进程文件
    edit params ext01
    ##传输进程文件
    edit params pump01
    ##应用进程文件
    edit params rep01

    复制代码

    文件查看:

    复制代码

    ##管理进程文件
    view params mgr
    ##抽取进程文件
    view params ext01
    ##传输进程文件
    view params pump01
    ##应用进程文件
    view params rep01

    复制代码

    文件删除:

    复制代码

    GGSCI (node1) 5> dblogin useridalias ogguser
    Successfully logged into database.
    GGSCI (node1 as ogguser@testdb) 8> delete checkpointtable ogguser.checkpointtab
    This checkpoint table may be required for other installations.  Are you sure you want to delete this checkpoint table? yes
    
    Successfully deleted checkpoint table ogguser.checkpointtab.
    
    GGSCI (node1 as ogguser@testdb) 9> delete rep01
    Deleted REPLICAT REP01.

    复制代码

    3、SCN和时间互转

     

    ##SCN转为时间戳
    select to_char(scn_to_timestamp(54995990597),'yyyy-mm-dd hh24:mi:ss') from dual;

     

    ##时间戳转为为SCN
    select timestamp_to_scn(to_timestamp('2018-05-06 08:05:14','yyyy-mm-dd hh24:mi:ss')) from dual;

     

    展开全文
  • 1.1 Oracle DataGuard技术 注:因为Logical Standby受支持数据类型,以及日志分析效率等影响很少用于实际应用,所以这里不做比较。以下比较的均为Physical Standby(1)DataGuard 的异步模式是将Archived Redo Log...

     1.1      Oracle DataGuard技术

       
    注:因为Logical Standby受支持数据类型,以及日志分析效率等影响很少用于实际应用,所以这里不做比较。以下比较的均为Physical Standby
    1DataGuard 的异步模式是将Archived Redo Log从源数据库异步的写到备份数据库,完成容灾工作,由于传输的是归档日志,所以这种方式存在的潜在风险是如果生产系统出现问题,会导致最后一个日志无法完成归档,这样这个日志中的数据无法加载到容灾端数据库,结果可能造成损失十几分钟或者几十分钟的数据,由此可以看到采用此种方式RPO>10分钟,对于存放关键数据的应用这么长时间的数据丢失显然是不允许的。
    2DataGuard 可以支持同步的模式,如果采用同步的模式,事务提交的前提是redo data必须写入本地online log及至少一个standby log,如果没有满足这个条件,则该事务不能提交,这就表示生产端与容灾端之间的网络链路要绝对可靠,如果生产端与容灾端之间的网络一旦出现问题,必然会导致生产系统down机,而且使用这种模式比较消耗系统资源,所以很多使用DataGuard的应用中均采用异步方式。
    3)不论是同步模式还是异步模式,DataGuard传输的都是redo log如果对于每天日志量比较大,带宽有限的异地应用,由于异地容灾租用带宽成本很高,根据我们的经验,现有的跨省容灾项目带宽一般为2M,如果采用DataGuard方式传输归档日志,根本无法及时将每天的归档日志传输到目标端。造成生产端与容灾端数据存在大量的数据延迟。虽然本项目目前是同城容灾,不过现在异地容灾已经是大势所趋,所以即使是目前的同城容灾,这个问题也应该提前考虑的。
    4)不论是同步模式还是异步模式,容灾端数据库都只能配置成物理备用库,众所周知,物理库用库通常在managed recover状态是不能提供查询的,如果想提供查询,就必须在open read only状态,显然不能满足实时查询的要求,并且在open read only状态时,即使可以继续传输归档日志,但是是不可以再进行即时归档恢复,如果这种情况下生产端数据库出现问题,容灾端数据库显然不能立刻接管业务,必须将open read only这段时间生产端传送过来的日志进行加载。加载完后将数据库open后才能对外提供应用。数据库open的时间跟数据量的大小也是相关的,数据量越大open的时间相对越长,而且可能存在数据库不能正常打开的可能。
    (5)监控DataGuard是否工作正常只能通过查看OracleAlert.log或者V$视图比较繁琐,不容易即时发现和解决复制过程中的问题,
     
    1.2      RealSyn技术与DataGuard技术的比较
    DSG RealSync
    ORACLE DG
    u 适合对象:
    ¨ 适合从工作组级、企业级到数据中心级的复制需求。
    ¨  无论系统采用什么样的服务器平台、什么样的存储平台,只要是ORACLE系统之间的复制即可适用。
    u 优点:
    ü ¨  目标端数据可用:目标端数据库在复制过程中出于可用状态,可用作数据查询、报表、数据抽取等任务分担;
    ü ¨  异构系统复制:源端系统和目标端系统可以采用异构的操作系统平台、存储平台;
    ü ¨  支持选择性复制:支持只复制指定的user、指定的Table、指定的行和列。节省存储空间,提高应用灵活性;
    ü ¨  支持1对多,多对1的复制结构:能够将多个数据库中的数据复制到一个数据库中;能够将一个数据库中的不同数据分发到不同的数据库中。
    ü ¨  节约带宽和网络资源:所需带宽一般在几Mbps,几十Mbps
    ü ¨  性能高于ORACLE DGDSG RealSync软件已经应用于广西移动的营帐系统的环境,数据容量达到2TB,每天产生的日志量最大能够处理到600GB/
    u 缺点:
    ü ¨  需要单独购买
    ü ¨  只支持异步复制,不支持同步方式。
    u 适合对象:
    ¨  主要适用于几十GB的小型数据库的容灾使用。
    u 优点:
    ü ¨  Free
    ü ¨  可实现同步复制模式。
    u 缺点:
    ü ¨  目标端数据不可用:目标端数据库在复制过程中处于RECOVER状态,不能被用来使用;
    ü ¨  操作系统必需同构:源和目标必需要求相同的操作系统和相同的数据库版本;
    ü ¨  只能全库复制:复制的对象是整个数据库
    ü ¨  不能实现数据整合和数据分发;
    ü ¨  性能低下,目前的应用案例多在几十GB的小型数据库上使用。
    ü ¨  重新同步一次非常复杂,需要通过备份恢复的方式来进行首次初始化,并且最好很死停止业务。
    ü ¨  logical standby模式的性能低下
    ü ¨  logical standby方式支持的数据类型有限,例如对long rawrowid等数据类型不支持。
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
    从性能上来比较,也有较大差别:
     
    1.3      总结二者对比的明显优势
    1.3.1   目标端数据库可用
    Oracle DataGuard的Physical Standby模式目标端数据库目标端数据不可用:目标端数据库在复制过程中处于RECOVER状态,不能被用来使用,这样只有容灾端数据库只能起到容灾的作用,从而造成机器设备的浪费。而且由于目标端数据库并不是open状态的,当源端数据库出现问题时整个切换过程要包括数据库启动和应用程序切换,且数据库启动过程中可能会由于日志错误造成数据库无法启动。
    由于DSG RealSync实时分析Oracle的在线日志,将分析的结果转换成sql语句在目标端进行加载,目标段数据库处于open的状态,这样当源端数据库出现问题时,这样整个切换时间只是应用层的切换时间,从而有效的保证了切换时间最短,这样目标端数据库不仅可以用来容灾还可以用来将OLTP应用、报表和查询应用分离;提高每个系统效率,降低资源争用和消耗,从而更有效的利用现有设备。
    1.3.2   DSG RealSync实时分析Oracle的在线日志
    Oracle DataGuard的Physical Standby是通过源端向目标端传送归档日志实现数据库的同步复制,这样只有归档的日志文件才能被传送到实时备份数据库上,这样一旦源端数据库出现问题,所有的在线日志中数据将全同丢失,这样将丢失十几分钟乃至更长时间的数据。这显然是无法令人满意的。
    DSG RealSync是一种异步准实时的复制技术,其数据延迟非常小。数据延迟的周期可以设置,在生产系统中,数据延迟和源端系统复制事物的多少,事物的处理方式有关,以及跟设置的log数据轮询周期有关。在复制数据量正常的OLTP系统中,数据延迟一般在几秒钟。
    根据实际的应用案例,我们发现在源端采用RAC方式,两个Instance并发装载20万条记录的情况下,在源端的数据产生速度>2000条/s的情况下,复制延迟时间为10秒以内。
    1.3.3  DSG RealSync在日志分析速度上非常好
    Oracle DataGuard还有另外一种应用很少的方式Logical Standby这种方式类似于DSG RealSync也是一种异步准实时的复制技术它同样是分析Oracle的在线日志将在线日志转换为sql语句在目标端装载Oracle DataGuardLogical Standby配置繁琐维护工作量很大这种模式使用logminer来进行日志的分析logminer在日志分析速度上是有瓶颈的而且使用logminer分析日志会消耗大量的cpu、内存、IO而且logminer不支持BLOBCLOB等数据类型。
    针对logminer的缺陷,DSG重新开发了ologx日志分析工具,根据实际的工程运行数据,在10分钟内产生800万条记录,realsync只需要2分钟即能分析完累积的日志,其速度远远高于产生日志的速度。完全能够满足电信级业务需求,即使是在业务高峰期,也不会造成日志累积。例如某移动项目约每天切换260组日志,每组日志660M,一天约170G日志量,RealSync的分析速度完全可以跟上。
    在正常情况下,DSG RealSync每天能够分析处理的日志量能达到300-400GB.(这与实际的硬件环境有关)
    另外目前DSG RealSync支持几乎全部Oracle数据类型,以及所有OracleDDL操作。
    1.3.4  DSG RealSync资源占用上不会对系统造成压力。
    DSG RealSync通过Oracle日志获得数据的变化信息,它独特的技术优势使得它对源系统的资源占用很小。在生产系统中,实际对源系统的影响和源系统复制事物的多少,事物的处理方式有关。在复制数据量正常的OLTP系统中,正常状态下对CPU资源的占用为几个百分点。
    根据移动行业的应用案例显示,在源端每分钟分析2OOM日志的情况下,DSG RealSync对CPU的占用上平均为单个cpu的5%。
    因为REALSYNC采用单进程方式运行,所以一个复制任务最多占用一个CPU,在未来的多任务下,最多使用2个CPU。相对于源端多个CPU的处理能力,RealSync不会对系统造成压力。
    1.3.5   DSG RealSync源端无需停机就可以完成初始化配置
    Oracle DataGuard初始化配置必须要求源端停机然后进行一个冷备用来初始化目标端的环境,这样如果实时同步过程中由于网络等其它问题造成复制中段就必须重新进行一个冷备以完成源端和目标端的初始化工作,因此使用过程中维护工作非常繁重。
    DSG RealSync提供了不需要停机的首次快速全同步功能,该功能支持数据库在正常业务不中断的情况下将源端所有数据包括对象导入到目标端数据库。从而避免了一些类似复制方案要求首次同步生产系统必须停机以保证数据一致性,这种操作对于7×24小时的生产系统肯定是有影响的。另外RealSync的首次全同步功能直接通过底层进行数据的导出和装载,并且导出过程中只导出表空间中使用的数据,源端的数据导出速度在2-3G/分钟左右,装载速度在1-1.5G/分钟左右(此数据可能因主机和盘阵的性能而稍有差异),导出数据自动传输到目标端,传输过程中采用DSG特有的压缩算法,压缩比一般在75%左右。
    附一:该功能与物理拷贝方式磁盘对拷、RMAN COPY、备份恢复和逻辑方式ORACLE EXP/IMP相比具有以下特点
    1realsync在作全同步时无需停止业务;
    2realsync作全同步的点和日志分析的点自动匹配,无需人为干预。因为如果需要人为干预就必需停止业务,否则无法保证全同步和增量同步之间的无缝衔接;
    3realsync在作全同步时可根据业务灵活调整,如根据业务规则分批进行全同步、而无需一定要在有限的时间内完成整个库的全同步,而是把业务变化最频繁,容灾需求最紧急的数据优先同步;
    4realsync作全同步采用IP网络通讯,对存储的结构无要求,不要求两个存储之间一定要在同一个SAN结构下,或者要求两个存储之间一定要有阵列复制软件;
    5RealSync采用多任务并发方式进行全同步,性能完全能够满足业务需求,如采用8个任务并发,正常情况下可在8小时左右完成1.3TB的数据的全同步(该数据为有效的记录数据,而不是数据库分配大小);
    6realsync支持源系统和目标系统之间的OS系统、存储系统、数据库版本不相同;
    1.3.6   较低的网络资源使用
    由于RealSync不是向目标端传送日志,而是将分析后的日志用压缩的xf1文件格式传送到目标端,这意味着RealSync在网络中传输的数据量远远小于系统生成的日志数量。
    由于oracle的日志是格式化的数据块,数据块中包含一部分格式信息,这些格式化信息占必然会占用一部分空间。
    进行insert数据时,oracle的日志不光记录插入数据,如果该插入数据的表中包含索引字段,oracle的日志同样会记录这些索引字段的插入操作,RealSync只抓取插入数据操作,并不理会插入索引的操作,如果一个表索引越多,日志里实际对于RealSync有用的信息就越少,这样抓出的xf1文件相对于原日志量也会越少。
    进行update操作时,oracle的日志会记录下update操作前进行更新字段的值和更新后字段的值,RealSync只抓取更新后字段的值。如果更新的是索引字段的话,日志中的无用信息会更多。
    根据实际测试对于100M的日志分析后生成的xf1文件累计只有20M大小,对于只有一个索引的表进行insertupdatedelete操作。加上对于增量数据的75%的压缩,这样100M的日志最后需要传输的只有5M左右。
    1.3.7   基于CRC算法的快速的一致性比较
    对于各种类型的复制软件数据一致性是用户比较关注的问题,因此是否有简单快速的进行数据一致性的检查的工具尤为重要。DSG RealSync提供了一个性能很高的一致性比较工具,该工具的工作方式不是通过select接口读取数据进行比较,而是通过其快速导出工具进行记录导出,并将导出的记录分别形成CRC校验码,然后通过CRC校验码来检验数据是否一致。从测试来看这种方式存在许多优点:
    1、性能高:对一个有900多万行记录的用户进行一致性比较,比较时间<1分钟;
    2、对特殊数据类型也可以比较:对于long raw,lob等类型都可以比较。
    3、网络压力小:因为传输的数据不是记录本身,而只是每条记录的crc校验码,因此网络压力很小。
    1.3.8           简易灾难恢复流程
    在生产数据库系统发生灾难的情况下,此时可使用容灾数据库首先接管业务,然后进行数据的反向恢复。具体步骤为:
    1    生产数据发生灾难,生产端业务停止;
    2    修改TNS的指向,将数据库指向灾备中心的数据库;
    3    应用系统重新连接灾备数据库,完成业务接管;
    4    排除生产系统的故障;
    5    启动生产系统的oracle数据库
    6    反向恢复生产系统数据
    7    修改TNS指向,将数据库指向生产中心的数据库;
    8    应用系统重新连接生产中心数据库,完成业务回切;
    9    配置realsync进行正向复制;
    1.3.9   国内设研发服务机构,随时响应客户需求
    数据复制容灾系统在业务连续性中是非常关键的,这种系统的建设不是单纯的产品购买问题,而是涉及深入到应用系统逻辑的支持。对于数据复制系统上的后期支持,以及针对新业务的开发上都需要有厂商更大的支持。
    DSG作为立足国内,面向世界的软件开发商,在国内设有研发中心和技术服务中心,在国内建有完善的售后服务体系。可以针对应用要求提供客户化支持,为该项目未来发展提供不间断的后续支持,提高响应速度。并且在工程实施方面将由DSG公司直接负责,保证了系统建设成功率。
    如对于应用会用到的特殊功能,DSG因为在国内有研发机构,因此能够及时响应。
     

    容灾备份异地容灾数据容灾容灾系统数据同步复制采集归档检索集中分发容灾方案异地容灾备份远程容灾容灾技术异地容灾方案oracle容灾容灾方案异地容灾数据容灾容灾是什么容灾系统异地容灾备份oracle容灾容灾备份数据容灾系统异构容灾方案下载EMCSRDF容灾技术和业务连续性服务方案,IBMPPRC,HPBusinessCopy,HDSTrueCopy,VERITASVVRDSGRealSync,QuestSharePlex,HDS数据中心容灾解决方案,飞康公司的持续数据保护(CDP)抽取共享升级迁移优化灾难恢复备份恢复数据保护器FalconStorCDP,StoreAge容灾方案,SEPATON容灾解决方案oracle数据库备份oracle自动备份oracle数据备份oracle冷备份oracle备份表证券税务财政社保公安电力交通保险银行工商石化电信联通移动网通企业管理金宏钱金税金关金财金卡和金审社会金盾金保金农金质和金水热备异构热容灾方案备份软件工具方案技术磁盘磁带oracle备份与恢复oracle定时备份oracle备份命令oracle热备份oracle的备份与恢复oracle如何备份oracle备份还原oracle备份方式oracle逻辑备份oracle9i备份oracle联机备份DSG公司DSGRealSync数据库复制容灾软件抽取共享升级迁移优化灾难恢复备份恢复oracleexp备份oracle备份rmanoracle的备份oracle远程备份oraclerman备份oracle备份方案oracle备份脚本oracle数据备份语句oracle备份工具oracle增量备份oracle备份技术oracle物理备份oracle冷备份脚本异地容灾备份oracle备份表空间SnapAssure高速备份恢复软件pb备份oracle数据库oracle备份级别oracle容灾备份oracle容灾方案oracle容灾技术招标oracle容灾备份oracle容灾dataguardoracle容灾产品电信级容灾系统建设boss容灾系统分布式数据容灾系统数据同步复制采集归档检索集中分发容灾系统的实现原理数据库容灾系统上海移动boss容灾系统证券税务财政社保公安电力交通保险银行工商石化电信联通移动网通企业管理金宏钱金税金关金财金卡和金审社会金盾金保金农金质和金水热备异构热容灾方案备份软件工具方案技术磁盘磁带RealMigrates数据库异构平台实时迁移软件建设银行容灾系统异地容灾系统结构pptvvr容灾系统容灾系统级异地容灾方案veritas异地容灾方案远程容灾方案vvr容灾方案iscsi容灾方案oracle容灾方案应用级容灾方案数据同步复制采集归档检索集中分发数据容灾方案远程异地容灾方案电信容灾方案数据备份方案双机热备份方案数据库备份方案服务器备份方案oracle备份方案oracle数据库备份方案异地备份方案异地容灾备份veritas备份方案doc磁带机备份方案企业数据备份方案案企业数据备份方案

    容灾备份异地容灾数据容灾容灾系统数据同步复制采集归档检索集中分发容灾方案异地容灾备份远程容灾容灾技术异地容灾方案oracle容灾容灾方案异地容灾数据容灾容灾是什么容灾系统异地容灾备份oracle容灾容灾备份数据容灾系统异构容灾方案下载EMCSRDF容灾技术和业务连续性服务方案,IBMPPRC,HPBusinessCopy,HDSTrueCopy,VERITASVVRDSGRealSync,QuestSharePlex,HDS数据中心容灾解决方案,飞康公司的持续数据保护(CDP)抽取共享升级迁移优化灾难恢复备份恢复数据保护器FalconStorCDP,StoreAge容灾方案,SEPATON容灾解决方案oracle数据库备份oracle自动备份oracle数据备份oracle冷备份oracle备份表证券税务财政社保公安电力交通保险银行工商石化电信联通移动网通企业管理金宏钱金税金关金财金卡和金审社会金盾金保金农金质和金水热备异构热容灾方案备份软件工具方案技术磁盘磁带oracle备份与恢复oracle定时备份oracle备份命令oracle热备份oracle的备份与恢复oracle如何备份oracle备份还原oracle备份方式oracle逻辑备份oracle9i备份oracle联机备份DSG公司DSGRealSync数据库复制容灾软件抽取共享升级迁移优化灾难恢复备份恢复oracleexp备份oracle备份rmanoracle的备份oracle远程备份oraclerman备份oracle备份方案oracle备份脚本oracle数据备份语句oracle备份工具oracle增量备份oracle备份技术oracle物理备份oracle冷备份脚本异地容灾备份oracle备份表空间SnapAssure高速备份恢复软件pb备份oracle数据库oracle备份级别oracle容灾备份oracle容灾方案oracle容灾技术招标oracle容灾备份oracle容灾dataguardoracle容灾产品电信级容灾系统建设boss容灾系统分布式数据容灾系统数据同步复制采集归档检索集中分发容灾系统的实现原理数据库容灾系统上海移动boss容灾系统证券税务财政社保公安电力交通保险银行工商石化电信联通移动网通企业管理金宏钱金税金关金财金卡和金审社会金盾金保金农金质和金水热备异构热容灾方案备份软件工具方案技术磁盘磁带RealMigrates数据库异构平台实时迁移软件建设银行容灾系统异地容灾系统结构pptvvr容灾系统容灾系统级异地容灾方案veritas异地容灾方案远程容灾方案vvr容灾方案iscsi容灾方案oracle容灾方案应用级容灾方案数据同步复制采集归档检索集中分发数据容灾方案远程异地容灾方案电信容灾方案数据备份方案双机热备份方案数据库备份方案服务器备份方案oracle备份方案oracle数据库备份方案异地备份方案异地容灾备份veritas备份方案doc磁带机备份方案企业数据备份方案案企业数据备份方案

     

    展开全文
  • Oracle 19c 新特性一览

    万次阅读 2019-02-14 14:33:42
    文章目录Oracle 19c 新特性一览可用性一般简化了 DG Broker中对于数据库参数的管理动态修改Fast-Start Failover (FSFO)目标库Broker的FSFO支持仅观察模式当主库闪回时,备库也会跟着闪回将主库还原点传播DG多实例...
  •  BI分析部门反映夜间拉取的ORACLE备库数据和业务部门导入主库的数据不一致,之间相差近2个小时。 二. 问题分析:  第一反映备库归档有GAP,主备库延迟,经过查询发现主备库归档并无延迟 SQL> select process, ...
  • 问题描述:新搭的dataguard,数据文件全部都可以同步到备库,截止到最后的归档都可以同步,但是此后主库的归档都同步不过去,备库没有错误日志生成,主库一直报  Error 12154 received logging on to the ...
  • 延时测试(备份库执行) alter database recover managed standby database delay 120 disconnect from session; 实时同步 ALTER ...
  • Oracle ADG 与 DG 的区别

    千次阅读 2020-02-25 16:51:12
    首先,DG(Data Guard,数据卫士)不是一个备份恢复的工具,然而,DG却拥有备份的功能,在物理DG下它可以和主库一模一样,但是它存在的目的并不仅仅是为了备份恢复数据,应该说它的存在是为了确保企业数据的高可用性...
  • Oracle数据同步

    千次阅读 2012-03-26 11:52:23
    温习一下Oracle中常说的HA、RAC、Datagurad的区别 简单的说 rac侧重于负载均衡 dg侧重于容灾 datagourd 双机侧重于业务的自动接管 关键看你的应用要求是什么样的 来进行选择~   RAC是多节点,每个节点一个...
  • Oracle 11g DG概念与进程详解

    万次阅读 2017-06-22 21:16:22
    RAC, Data Gurad, Stream 是Oracle 高可用性体系中的三种工具,每个工具即可以独立应用,也可以相互配合。 他们各自的侧重点不同,适用场景也不同。 RAC 它的强项在于解决单点故障和负载均衡,因此RAC ...
  • Oracle中常说的HA、RAC、Datagurad的区别

    千次阅读 2014-12-03 23:33:52
    dg侧重于容灾 datagourd 双机侧重于业务的自动接管 关键看你的应用要求是什么样的 来进行选择~     RAC是多节点,每个节点一个INSTANCE,是保证应用的,只要有一个节点是正常运行的,就能连接到数据库...
  • 使用sys用户登录备库数据库,查看数据库状态 ...针对RAC环境的dg环境,RFS和MRP是只存在一个节点中的。 如果登录一个节点发现没有这两个进程,要在另一个节点上再次验证。 查看备库数据库同步情况: select threa
  • alter database recover managed standby database delay 120 disconnect from session;  延时测试 1,在备库上运行: alter database recover managed standby database delay 120 disconnect from session;...
  • select value from v$dataguard_stats where name='apply lag'; 转载于:https://www.cnblogs.com/liang545621/p/9407307.html
  • Oracle 11g DATAGUARD 同步延时监控脚本

    千次阅读 2019-05-30 15:24:27
    $cat check_oracle_dg_delay.sh #!/bin/sh source ~/.bash_profile #定义变量 v_datetime=`date +"%Y-%m-%d %H:%M:%S"` v_username='oracle' v_hostname=`hostname` #获取IP地址 v_ip=`/sbin/ifconfig bond0|grep '...
  • oracle DG: 英文全称dataguard 提供备份和灾难恢复 dg----必须要有两台数据库,一台主一台备,主备可以来回切换 dg功能 1.备份(硬件可以低于主库,软件可以不一致) 2.提供容灾(硬件必须不低于主库,软件路径...
  • ORACLE rac集群概念和原理

    万次阅读 2019-04-17 15:21:35
    多个Oracle服务器组成一个共享的Cache,而这些Oracle服务器共享一个基于网络的存储。这个系统可以容忍单机/或是多机失败。不过系统内部的多个节点需要高速网络互连,基本上也就是要全部东西放...
  • 数据库同步技术

    千次阅读 2014-09-29 16:48:17
    温习一下Oracle中常说的HA、RAC、Datagurad的区别 2008-04-20 23:59       简单的说 rac侧重于负载均衡 dg侧重于容灾 datagourd 双机侧重于业务的自动接管 关键看你的应用要求是什么样的 来...
  • 研究问题: 1. 什么是读写分离?2. 为什么要做读写...3. ORACLE读写分离的方式,各有优缺点?4. 详解其中一种ORACLE读写分离方式。一、 什么是读写分离?如图: Ø 官方定义 为了确保数据库产品的稳定性,...
1 2 3 4 5 ... 20
收藏数 615
精华内容 246
热门标签
关键字:

dg同步延迟 oracle