OGG实现两台Oracle数据库的同步(二)

2015-02-02 20:42:39 · 作者: · 浏览: 21
gg/goldengate
export GG_HOME
PATH=\$ORACLE_HOME/bin:$GG_HOME:\$PATH
export PATH
LD_LIBRARY_PATH=\$ORACLE_HOME/lib:\$GG_HOME:\$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
EOF
应用刚刚修改的环境变量,然后进入GoldenGate安装目录,执行ldd ggsci,确定需要的库文件都能够找到。如果出现共享库文件无法找到,例如libnnz10.so => not found,检查LD_LIBRARY_PATH环境变量的设置
[goldengate@ggdb goldengate]$?source ~/.bashrc
[goldengate@ggdb goldengate]$?cd $GG_HOME
[goldengate@ggdb goldengate]$?ldd ggsci
我们可以认为ogg的安装其实就是一个解压。非常简单。


创建goldengate工作目录


源端和目标端:

[goldengate@rac1 goldengate]$?cd $GG_HOME
[goldengate@rac1 goldengate]$?./ggsci

GGSCI (rac1) 1>?create subdirs

Creating subdirectories under current directory /opt/gg/goldengate

Parameter files /opt/gg/goldengate/dirprm: created
Report files /opt/gg/goldengate/dirrpt: created
Checkpoint files /opt/gg/goldengate/dirchk: created
……

GGSCI (gg1) 2> exit


源和目标端:

[goldengate@rac1 ~]$?mkdir /opt/gg/trails
[goldengate@rac1 ~]$?ls -l /opt/gg | grep trails


?


源端和目标端:

DYNAMICPORTLIST中配置了GoldenGate(extract和replicat)进程使用的端口范围
PORT参数指定MANAGER使用的端口
AUTORESTART参数使抽取/复制进程失败后自动重启
配置MANAGER的参数,PURGEOLDEXTRACTS参数指定:当根据checkpoint发现已经完成抽取和复制的trail文件将被自动删除,但保留最近10个。
PURGEDDLHISTORY和PURGEMARKERHISTORY分别删除DDL历史表和marker表中的过期数据,以控制它们不会变得过于庞大。

GGSCI (gg1) 1>?edit params mgr

PORT 5898
PURGEOLDEXTRACTS /opt/gg/trails/w1*, USECHECKPOINTS, MINKEEPFILES 10
AUTORESTART ER *, RETRIES 3, WAITMINUTES 5
PURGEDDLHISTORY MINKEEPDAYS 3, MAXKEEPDAYS 5, FREQUENCYMINUTES 30
PURGEMARKERHISTORY MINKEEPDAYS 3, MAXKEEPDAYS 5, FREQUENCYMINUTES 30




源端:

GGSCI (rac1) 2>?edit params ./globals
GGSCHEMA goldengate

目标端:

创建一个checkpoint表
replicat通过这个表来维护trail文件中的read position。这不是个必须的操作,如果没有这个表,则通过一个磁盘文件来维护

GGSCI (ggdb) 2>?dblogin userid goldengate,password goldengate
Successfully logged into database.

GGSCI (ggdb) 3>?add checkpointtable goldengate.chkpoint

Successfully created checkpoint table GOLDENGATE.CHKPOINT.

GGSCI (ggdb) 4>?edit params ./globals

GGSCHEMA goldengate
CHECKPOINTTABLE goldengate.chkpoint