GoldenGate Integrated Capture Mode

通常我们配置的Goldengate是读取在线日志文件或者ALO(只读归档日志的)。还有另外一种抽取模式Integrated Capture Mode,它是依靠 logmining server读取数据库改变的信息

Integrated capture supports more data types as well as compressed data and as it is fully integrated with the database there is no additional setup steps required when we are configuring GoldenGate with things like RAC, ASM and TDE

配置环境:

Source:
OS:Redhat 6.3
DB:11.2.0.4
IP:192.168.56.60

Target:
OS:Redhat 6.3
DB:11.2.0.4
IP:192.168.56.61

Prepare(Source And Target DB):

useradd ogg -g oinstall

Add Environment Varible
vi /home/oracle/.bash_profile
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/ogg

Configure Database
alter database archivelog;
alter database force logging;
alter database add supplemental log data (primary key ,unique index) columns;

select SUPPLEMENTAL_LOG_DATA_MIN, SUPPLEMENTAL_LOG_DATA_PK,
SUPPLEMENTAL_LOG_DATA_UI from v$database;

Create OGG User:
sqlplus / as sysdba
create user ogg identified by ogg;
grant dba to ogg;

GGSCI (zbdba1) 1> edit params ./GLOBAL
GGSCHEMA ogg
CHECKPOINTTABLE ogg.checkpoint

SQL> show parameter goldengate

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
enable_goldengate_replication        boolean     TRUE

Installing the DDL objects:
1、Run the @marker_setup.sql script. This script installs support for the Oracle GoldenGate
marker system, which is required for DDL support. You will be prompted for the name
of the Oracle GoldenGate schema.
drop trigger ggs_ddl_trigger_before;
grant create table,create view,create sequence to ogg;
2、Run the @ddl_setup.sql script   Script that installs the Oracle GoldenGate DDL extraction and
replication objects. (Oracle installations)
3、Run the @role_setup.sql script. This script drops and creates the role needed for DDL
synchronization. It grants DML permissions on the Oracle GoldenGate DDL objects
4、Grant the role to all Oracle GoldenGate Extract users. You may need to make multiple
grants if the processes have different user names.
Run the @ddl_enable.sql script to enable the DDL trigger.
5、To improve the performance of the DDL trigger, make the ddl_pin script part of the database
startup. It must be invoked with the Oracle GoldenGate DDL user name, as in:
@?/rdbms/admin/dbmspool.sql
SQL> @ddl_pin ogg
To improve the performance of the DDL trigger
This script pins the PL/SQL package that is used by the trigger into memory. If executing
this script from SQL*Plus, connect as SYSDBA from the Oracle GoldenGate home directory.
This script relies on the Oracle dmbs_shared_pool system package, so install that package
before using ddl_pin.

Source DB:

MANAGER
GGSCI (zbdba1) 1>  create subdirs

GGSCI (zbdba1) 22> view param mgr

Source:
port 7839
DYNAMICPORTLIST 7840-7914
USERID ogg,PASSWORD ogg
AUTORESTART EXTRACT *,RETRIES 5,WAITMINUTES 3
PURGEOLDEXTRACTS ./DIRDAT/*,MINKEEPDAYS 3
PURGEDDLHISTORY MINKEEPDAYS 7,MAXKEEPDAYS 10,FREQUENCYMINUTES 30
PURGEMARKERHISTORY MINKEEPDAYS 7,MAXKEEPDAYS 10
LAGREPORTHOURS 1
LAGINFOMINUTES 30
LAGCRITICALMINUTES 45

Target:

port 7839
DYNAMICPORTLIST 7840-7914
USERID ogg,PASSWORD ogg
AUTORESTART REPLICAT *,RETRIES 5,WAITMINUTES 3
PURGEOLDEXTRACTS ./DIRDAT/*,MINKEEPDAYS 3
PURGEDDLHISTORY MINKEEPDAYS 7,MAXKEEPDAYS 10,FREQUENCYMINUTES 30
PURGEMARKERHISTORY MINKEEPDAYS 7,MAXKEEPDAYS 10
LAGREPORTHOURS 1
LAGINFOMINUTES 30
LAGCRITICALMINUTES 45

EXTRACT

GGSCI (zbdba1) 1> dblogin userid ogg,password ogg
GGSCI (zbdba1) 1> add trandata zbdba.*

GGSCI (zbdba1) 65> REGISTER EXTRACT ext1 DATABASE

2015-03-03 21:57:13  WARNING OGG-01758  This EXTRACT EXT1 is already registered with the database.

GGSCI (zbdba1) 2> ADD EXTRACT ext1 INTEGRATED TRANLOG, BEGIN NOW

EXTRACT added.

GGSCI (zbdba1) 3>
GGSCI (zbdba1) 3>
GGSCI (zbdba1) 3> add exttrail /ogg/dirdat/sa  extract ext1
EXTTRAIL added.

GGSCI (zbdba1) 4> add rmttrail ./dirdat/sa,extract ext1
RMTTRAIL added.

GGSCI (zbdba1) 22> view param ext1

EXTRACT EXT1
setenv ( NLS_LANG = AMERICAN_AMERICA.ZHS16GBK )
USERID ogg,PASSWORD ogg
DDL &
INCLUDE MAPPED OBJTYPE 'TABLE' &
INCLUDE MAPPED OBJTYPE 'IDNEX' &
INCLUDE MAPPED OBJTYPE 'SEQUENCE' &
INCLUDE MAPPED OBJTYPE 'VIEW' &
INCLUDE MAPPED OBJTYPE 'PROCEDURE' &
INCLUDE MAPPED OBJTYPE 'FUNCTION' &
INCLUDE MAPPED OBJTYPE 'PACKAGE' &
INCLUDE MAPPED OBJTYPE 'MATERIALIZED VIEW' &
EXCLUDE OPTYPE COMMENT
TRANLOGOPTIONS INTEGRATEDPARAMS (MAX_SGA_SIZE 100)
DDLOPTIONS ADDTRANDATA NOCROSSRENAME REPORT
REPORTCOUNT EVERY 1 MINUTES,RATE
DISCARDFILE ./dirrpt/EXTSA.DSC,APPEND,MEGABYTES 1024
THREADOPTIONS MAXCOMMITPROPAGATIONDELAY 60000 IOLATENCY 60000
DBOPTIONS ALLOWUNUSEDCOLUMN
WARNLONGTRANS 2H,CHECKINTERVAL 3M
exttrail ./dirdat/sa
FETCHOPTIONS NOUSESNAPSHOT,FETCHPKUPDATECOLS,MISSINGROW REPORT
table zbdba.*;

在设置TRANLOGOPTIONS INTEGRATEDPARAMS (MAX_SGA_SIZE 100) 参数时,启动可能报错

修改streams_pool_size的大小:

SQL> show parameter streams

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
streams_pool_size                    big integer 152M

开启ext1:

GGSCI (zbdba1) 13> start ext1

Sending START request to MANAGER ...
EXTRACT EXT1 starting

查看日志:

2015-03-03 22:00:34  INFO    OGG-00992  Oracle GoldenGate Capture for Oracle, ext1.prm:  EXTRACT EXT1 starting.
2015-03-03 22:00:34  INFO    OGG-03035  Oracle GoldenGate Capture for Oracle, ext1.prm:  Operating system character set identified as UTF-8. Locale: en_US, LC_ALL:.
2015-03-03 22:00:34  INFO    OGG-01635  Oracle GoldenGate Capture for Oracle, ext1.prm:  BOUNDED RECOVERY: reset to initial or altered checkpoint.
2015-03-03 22:00:34  INFO    OGG-01815  Oracle GoldenGate Capture for Oracle, ext1.prm:  Virtual Memory Facilities for: BR
    anon alloc: mmap(MAP_ANON)  anon free: munmap
    file alloc: mmap(MAP_SHARED)  file free: munmap
    target directories:
    /ogg/BR/EXT1.
2015-03-03 22:00:34  INFO    OGG-01815  Oracle GoldenGate Capture for Oracle, ext1.prm:  Virtual Memory Facilities for: COM
    anon alloc: mmap(MAP_ANON)  anon free: munmap
    file alloc: mmap(MAP_SHARED)  file free: munmap
    target directories:
    /ogg/dirtmp.
2015-03-03 22:00:35  WARNING OGG-01423  Oracle GoldenGate Capture for Oracle, ext1.prm:  No valid default archive log destination directory found for thread 1.
2015-03-03 22:00:47  INFO    OGG-02036  Oracle GoldenGate Capture for Oracle, ext1.prm:  <span style="color:#ff0000;">Integrated capture successfully attached to logmining server OGG$EXT1.</span>
2015-03-03 22:00:48  INFO    OGG-00993  Oracle GoldenGate Capture for Oracle, ext1.prm:  EXTRACT EXT1 started.
2015-03-03 22:00:48  INFO    OGG-01056  Oracle GoldenGate Capture for Oracle, ext1.prm:  Recovery initialization completed for target file ./dirdat/sa000000, at RBA 81396296, CSN 1296687.
2015-03-03 22:00:48  INFO    OGG-01478  Oracle GoldenGate Capture for Oracle, ext1.prm:  Output file ./dirdat/sa is using format RELEASE 11.2.
2015-03-03 22:00:48  WARNING OGG-01438  Oracle GoldenGate Capture for Oracle, ext1.prm:  Checkpoint marked as from graceful shutdown, but records found after checkpoint in trail ./dirdat/sa.  Expected EOF Seqno 0, RBA 0.  Found Seqno 0, RBA 81396296.
2015-03-03 22:00:48  INFO    OGG-01026  Oracle GoldenGate Capture for Oracle, ext1.prm:  Rolling over remote file ./dirdat/sa000000.

datapump

add extract ext2,exttrailsource /ogg/dirdat/sa
ADD EXTTRAIL ./dirdat/sa, EXTRACT EXT2
add rmttrail  /ogg/dirdat/sa, extract ext2

GGSCI (zbdba1) 2>  view param ext2

EXTRACT EXT2
passthru
RMTHOST 192.168.56.61,MGRPORT 7839,COMPRESS
RMTTRAIL ./dirdat/sa
table zbdba.*;

Target DB:

GGSCI (zbdba2) 1>  create subdirs

GGSCI (zbdba2) 42> view param mgr

port 7839
DYNAMICPORTLIST 7840-7914
USERID OGG,PASSWORD ogg
AUTORESTART REPLICAT *, RETRIES 5, WAITMINUTES 3
PURGEOLDEXTRACTS ./dirdat/*,MINKEEPDAYS 3
PURGEDDLHISTORY MINKEEPDAYS 7,MAXKEEPDAYS 10,FREQUENCYMINUTES 30
PURGEMARKERHISTORY MINKEEPDAYS 7,MAXKEEPDAYS 10
LAGREPORTHOURS 1
LAGINFOMINUTES 30
LAGCRITICALMINUTES 45 

Create Replicat
GGSCI (zbdba2) 1>  view param ./GLOBALS
GGSCHEMA ogg
CHECKPOINTTABLE ogg.checkpoint

dblogin userid ogg,password ogg
 add checkpointtable  ogg.checkpoint

Successfully created checkpoint table OGG.CHECKPOINT.

GGSCI (zbdba2) 2>  add replicat rep1,exttrail /ogg/dirdat/sa, checkpointtable ogg.checkpoint
REPLICAT added.

GGSCI (zbdba2) 19> edit param rep1

REPLICAT rep1
ASSUMETARGETDEFS
USERID ogg, PASSWORD ogg
discardfile ./dirdat/rep1_discard.txt,append,megabytes 5
DDL INCLUDE MAPPED
DDLOPTIONS REPORT
BATCHSQL
DBOPTIONS DEFERREFCONST
DBOPTIONS LOBWRITESIZE 102400
HANDLECOLLISIONS
DDLERROR DEFAULT DISCARD RETRYOP MAXRETRIES 5 RETRYDELAY 20
--grouptransops 1
--maxtransops 1
APPLYNOOPUPDATES
MAP zbdba.*, TARGET zbdba.*;

start manager

GGSCI (zbdba2) 23> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     RUNNING
REPLICAT    STOPPED     REP1        00:00:00      00:00:03

Test Data(Source and Target DB):

create tablepsace zbdab datafile '/opt/oracle/oradata/zbdba.dbf' size 100m;
create zbdba identified by oracle default tablespace zbdba;
grant dba to zbbda;

On Source DB:

User data pump:
expdp zbdba/oracle DIRECTORY=dumpdir
           DUMPFILE=zbdba.dmp LOGFILE=zbdba.log
           SCHEMAS=zbdba JOB_NAME=exp_zbdba_schema

scp data to target DB

On Target DB:
impdp zbdba/oracle DIRECTORY=dumpdir
           DUMPFILE=zbdba.dmp SCHEMAS=zbdba
           JOB_NAME=imp_zbdba_schema
时间: 2024-08-27 21:56:17

GoldenGate Integrated Capture Mode的相关文章

Oracle 环境下 GoldenGate 集成抽取(Integrated Capture)模式与传统抽取模式(Classic Capture)间的切换

检查抽取进程模式 在 GGSCI 环境下,执行类似如下语句查看特定进程的状态. GGSCI> info <Group_Name> 其中,<Group_Name> 为进程名称.例如:下图所示 EPUBADM 进程抽取模式为集成抽取模式(Integrated Capture) 例如:下图所示 ETEST 进程抽取模式为传统抽取模式(Classic Capture) 由传统抽取(Classic Capture)模式升级至集成抽取(Integrated Capture)模式 1.升级

OGG-02050 Not enough database memory to honor requested MAX_SGA_SIZE

在测试GoldenGate Integrated Capture Mode的时候,启动抽取进程报 OGG-02050 Not enough database memory to honor requested MAX_SGA_SIZE 错误 参数配置如下: GGSCI (zbdba1) 20> view param ext1 EXTRACT ext1 USERID ogg, PASSWORD ogg TRANLOGOPTIONS INTEGRATEDPARAMS (MAX_SGA_SIZE 50

goldengate 12c对oracle DB的改进

1. 现在可使用Oracle Universal Installer,即安装时有图形化界面,同时会自动安装java runtime environment,不过个人认为,还是ZIP安装包方便,解压即用. 2. 针对集成捕获(Integrated capture),性能上有了进一步提升,对用户而言,不必进行额外的配置: 3. Integrated Replicat(集成交付),针对oracle db,现在可以使用此项功能,非oracleDB使用的是coordinated delivery(协同交付

GoldenGate 12c + Oracle 12c Multitenant Container databases

下面为GoldenGate 12c + Oracle 12c Multitenant Container databases例子 1.安装OGG 源 端OGG: C:\Oracle\product\12.1.2\OGG_Source 目标端OGG: C:\Oracle\product\12.1.2\OGG_Target 2.创建测试的用户及表格 源表: SQL> alter session set container=pdborcl; 会话已更改. SQL> show con_name; CO

【翻译自mos文章】OGG的集成捕捉模式支持Oracle database标准版么?

OGG的集成捕捉模式支持Oracle database标准版么? 来源于: Does OGG 11.2.1 Integrated Capture Work with Oracle Database Standard Edition? (文档 ID 1431938.1) 适用于: Oracle GoldenGate - Version 11.2.1.0.0 and later Information in this document applies to any platform. 目标: Ora

OGG之Replicate进程

Replicate操作的过程如下: 1.读取源端传输过来的trail文件:执行data数据过滤和转换操作(如果配置了); 2.DML操作:根据commit顺序,构造LCR; DDL操作:Replicate进程直接apply; 3.Replicate通过lightweight streaming接口与目标库后台进程(Database inbound server)建立连接; 4.将LCR传输到inbound server,然后apply这些数据到目标数据库. 注意:上述四种情况中凡是涉及到inte

利用XAG在RAC环境下实现GoldenGate自动Failover

概述 在RAC环境下配置OGG,要想实现RAC节点故障时,OGG能自动的failover到正常节点,要保证两点: 1. OGG的checkpoint,trail,BR文件放置在共享的集群文件系统上,RAC各节点都能访问到 2. 需要有集群软件的来监测OGG进程,以及发生故障时,自动在正常节点重启OGG(failover) Oracle Grid Infrastructure Standalone Agents (XAG)搭配Oracle支持的集群文件系统,可以实现OGG的自动failover,本

Oracle 12c与GoldenGate 12c的一些问答

1. 如何知道一个12c DB是否为容器数据库?(1) container DBSQL> select cdb from v$database;CDB---YES (2) non container DBSQL> select cdb from v$database;CDB---NO 2. 如何查看所有PDB?SQL> select name, open_mode from v$pdbs;NAME OPEN_MODE------------------------------ -----

12C数据库Goldengate同步异构数据库Kafka中间件之二

前两天测试环境的需求将上线生产环境,需求还是a. 数据源:SSP库 ssp.m_system_user,Oracle DB 12.1.0.2.0,Ogg Version 12.2.0.1.1 OGGCORE_12.2.0.1.0_PLATFORMS_151211.1401_FBOb. 数据目标:MySQL DLS库 DLS_SYSTEM_USERc.kafka集群:10.1.1.247 ,Ogg Version 12.3.0.1.0 OGGCORE_OGGADP.12.3.0.1.0GA_PLA