测试环境:
Oracle:11.2.0.1.0 GoldenGate:11.2.1.0.1 OS:redhat 5.5
1. 安装
1.1 下载介质
GoldenGate的安装介质可以从Oracle的官网上下载。
http://www.oracle.com/technetwork/middleware/goldengate/overview/index.html
1.2 配置GoldenGate用户
下载完成后将其拷贝到源和目标的相应位置解压完成后,即可以开始进行配置。
# su – oraoms
$ mkdir /oragg/oragg
$ cd /oragg/oragg
$ tar -xvf …….tar
$ vi ~/.bash_profile
添加如下的内容:
export ORACLE_BASE=/oracle/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/oragg/oragg
export GGATE=/oragg/oragg
1.3 创建目录
GoldenGate安装目录下创建必要的目录。
$ cd /oragg/oragg
$ ./ggsci
Oracle GoldenGate Command Interpreter for Oracle
Version 11.2.1.0.1 OGGCORE_11.2.1.0.1_PLATFORMS_120423.0230_FBO
Linux, x64, 64bit (optimized), Oracle 11g on Apr 23 2012 08:32:14
Copyright (C) 1995, 2012, Oracle and/or its affiliates. All rights reserved.
GGSCI (DFXXDBS02) > create subdirs
至此,GoldenGate基本的安装完成。 此部分需要在源端和目标端完成。
2. 源数据库配置
GoldenGate主要通过抓取源端数据库重做日志进行分析,将获取的数据应用到目标端,实现数据同步。因此,为了让GoldenGate能够正常工作,源数据库需要进行一定配置。
2.1 归档模式、附加日志、强制日志
--查看 select db.LOG_MODE, db.SUPPLEMENTAL_LOG_DATA_MIN, db.FORCE_LOGGING from v$database db
--修改
--1)archivelog
shutdown immediate
startup mount
alter database archivelog;
alter database open;
--2)force logging
alter database force logging;
--3)supplemental log data
alter database add supplemental log data;
2.2 关闭数据库的recyblebin
alter system set recyclebin=off scope=spfile;
如果数据库是10g,需要关闭recyclebin并重启;或者手工purge recyclebin。
2.3 配置复制的DDL支持
create user ogg identified by ogg default tablespace users temporary tablespace temp;
grant connect,resource,unlimited tablespace to ogg;
grant execute on utl_file to ggate;
@$GGATE/marker_setup.sql;
@$GGATE/ddl_setup.sql;
@$GGATE/role_setup.sql;
grant GGS_GGSUSER_ROLE to ggate;
@$GGATE/ddl_enable.sql;
2.4 创建源端和目标端的测试用户
源端:
create user test01 identified by test01 default tablespace test01 temporary tablespace temp;
grant connect,resource,unlimited tablespace to test01;
目标端:
create user test02 identified by test02 default tablespace test02 temporary tablespace temp;
grant connect,resource,unlimited tablespace to test02;
3. 配置manager
在源端和目标端分别执行下面的步骤。
3.1 创建manager
[ggate@gridcontrol gg]$ ./ggsci
GGSCI (DFXXDBS02) > info all
Program Status Group Lag Time Since Chkpt
MANAGER STOPPED
GGSCI (DFXXDBS02) > edit params mgr
PORT 7809
GGSCI (DFXXDBS02) > start manager
Manager started.
4. 配置源端复制队列
先连接到数据库,测试连接:
GGSCI (DFXXDBS02) > dblogin ogg@bjoms, password ogg
Successfully logged into database.
添加源端表级附加日志
GGSCI (DFXXDBS02) > add trandata test01.*
GGSCI (DFXXDBS02) > info trandata test01.*
表级补全日志需要在最小补全日志打开的情况下才起作用,只开启最小补全日志(alter database add supplemental log data;),redolog记录的信息还不够全面,必须再使用add trandata开启表级的补全日志以获得必要的信息。
4.1 在源端创建Extract process
GGSCI (DFXXDBS02) > add extract ext1, tranlog, begin now
EXTRACT added.
GGSCI (DFXXDBS02) > add exttrail /oragg/oragg/dirdat/lt, extract ext1
EXTTRAIL added.
GGSCI (DFXXDBS02) > edit params ext1
extract ext1
userid ogg@bjoms, password ogg
exttrail /oragg/oragg/dirdat/lt
ddl include mapped objname test01.*;
table test01.*;
GGSCI (DFXXDBS02) > info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
EXTRACT STOPPED EXT1 00:00:00 00:02:32
4.2 在源端创建Data Pump Group
GGSCI (DFXXDBS02) > add extract dpump,exttrailsource /oragg/oragg/dirdat/lt
EXTRACT added.
GGSCI (DFXXDBS02) > add rmttrail /oragg/oragg/dirdat/lt, extract dpump
RMTTRAIL added.
GGSCI (DFXXDBS02) > view params dpump
extract dpump
userid ogg@bjoms, password ogg
rmthost 10.88.2.243, mgrport 7809
rmttrail /oragg/oragg/dirdat/lt
passthru
table test01.*;
passthru --该参数控制Extract process的模式,当为PASSTHRU时,不检查表的定义,仅当source 和target 对象的结构一样,并没有map或者filter 时使用,不检查表定义,可以加快处理的速度。
5. 配置目标端同步队列
5.1 在目标端添加checkpoint表
[oraoms@DFXXDBS02 oragg]$ ./ggsci
GGSCI (DFXXDBS02) > edit params ./GLOBAL –添加下列内容
GGSCHEMA ogg
CHECKPOINTTABLE ogg.ggs_checkpoint
GGSCI (DFXXDBS02) > dblogin ogg@xboms02, password ogg
Successfully logged into database.
GGSCI (DFXXDBS02) > add checkpointtable ogg.ggs_checkpoint
Successfully created checkpoint table ogg.ggs_checkpoint.
5.2 创建同步队列
GGSCI (DFXXDBS02) > add replicat rep1, exttrail /oragg/oragg/dirdat/lt, checkpointtable ogg.ggs_checkpoint
REPLICAT added.
GGSCI (DFXXDBS02) > edit params rep1
replicat rep1
ASSUMETARGETDEFS
userid ogg@xboms02,password ogg
discardfile /oragg/oragg/dirdat/rep1_discard.txt, append, megabytes 10
map test01.*, target test02.*;
6. 开启同步
GGSCI (DFXXDBS02) > start extract ext1
GGSCI (DFXXDBS02) > info all
Program Status Group Lag Time Since Chkpt
MANAGER RUNNING
EXTRACT RUNNING EXT1 00:00:00 00:00:05
GGSCI (DFXXDBS02) > start replicat rep1
GGSCI (DFXXDBS02) > info all
Program Status Group Lag Time Since Chkpt
MANAGER RUNNING
REPLICAT RUNNING REP1 00:00:00 00:00:00
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/27057145/viewspace-1985581/
,如需转载,请注明出处,否则将追究法律责任。