在之前的文档介绍的GoldenGate安装和初始化环境的配置。并且通过简单的实例演示了,通过GoldenGate自带的Direct Load功能,从源端一次性初始化数据到目标端,参见:Oracle GoldenGate安装应用及初始化数据示例。
数据完成初始化后,紧接着会面临后续数据同步的问题,本节通过实例介绍,如何配置GoldenGate满足这种场景的需求。
在前面的配置中,我们在jss用户下创建了j1表,这里仍以该表为例,增量同步ora9i下的jss.j1对象到目标端同名帐户下。
源端配置
首先连接到数据库:
GGSCI (ora9node1) 5> dblogin userid ggate@source, password ggate
Successfully logged into database.要同步的对象需要启用supplemental logging,执行add trandata命令:
GGSCI (ora9node1) 6> add trandata jss.j1
Logging of supplemental redo data enabled for table JSS.J1.注意,执行add trandata命令前,必须连接到源端数据库,每个要同步的对象都需要执行创建trandata,add trandata命令支持通配符,当需要处理多个对象时可以在一定程度上简化命令行数。
创建完成后,可以通过info trandata命令,查看指定对象的附加日志是否已经启动:
GGSCI (ora9node1) 7> info trandata jss.j1
Logging of supplemental redo log data is enabled for table JSS.J1也可以在Oracle数据库以通过user_log_groups数据字典查询附加日志信息。
创建一个新的extract进程,执行命令如下:
GGSCI (ora9node1) 8> add extract ext2,tranlog,begin now,threads 1
EXTRACT added.配置新创建的ext2相关参数,执行命令如下:
- GGSCI (ora9node1) 9> edit params ext2
增加下列内容:
extract ext2
userid ggate@source, password ggate
rmthost 172.16.1.110, mgrport 7809
rmttrail ./dirdat/dt
table jss.j1;配置trail文件,保存extract的数据到目标端服务器:
GGSCI (ora9node1) 11> add rmttrail ./dirdat/dt, extract ext2
RMTTRAIL added.随后,就可以启动ext2进程:
GGSCI (ora9node1) 12> start extract ext2
Sending START request to MANAGER ...
EXTRACT EXT2 starting目标端配置
编辑全局参数文件:
- GGSCI (rhel5u3) 1> edit params ./GLOBAL
增加下列内容:
GGSCHEMA ggate
CHECKPOINTTABLE ggate.checkpoint连接到目标端数据库:
GGSCI (rhel5u3) 2> dblogin userid ggate, password ggate
Successfully logged into database.创建一个检查点表,Replicat通过该表维护读取位置:
GGSCI (rhel5u3) 3> add checkpointtable ggate.ggschkpt
Successfully created checkpoint table GGATE.GGSCHKPT.创建新的replicat进程:
GGSCI (rhel5u3) 4> add replicat rep2, exttrail ./dirdat/dt, checkpointtable ggate.ggschkpt
REPLICAT added.编辑rep2配置文件:
- GGSCI (rhel5u3) 5> edit param rep2
增加下列内容:
REPLICAT rep2
ASSUMETARGETDEFS
USERID ggate@target, PASSWORD goldengate
DISCARDFILE ./dirrpt/rep2_gg2.dsc, PURGE
MAP jss.*, TARGET jss.*;保存退出后,启动复制进程:
GGSCI (rhel5u3) 6> start replicat rep2
Sending START request to MANAGER ...
REPLICAT REP2 starting配置工作至此完成,接下来就可以通过SQL语句,在源端对jss.j1表执行dml操作(由于未执行DDL脚本,当前的配置环境仍不支持DDL同步),然后目标端查看是否顺利接收并应用。
ORA9I> insert into jss.j1 values (23624,'a');
1 row created.
ORA9I> commit;
Commit complete.目标端执行查询:
RHEL5> select * from jss.j1 where id=23624;
ID VL
---------- ------------------------------
23624 C同步成功。
=============================================
关联阅读:
Oracle GoldenGate安装应用及初始化数据示例
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7607759/viewspace-701976/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/7607759/viewspace-701976/