1. 不使用数据泵完成Oracle-Oracle的双向复制。
Docrac1 和 docrac2 上的数据库golden, 分别有ggs schema 和ggt schema. 把docrac1 上ggs里的表和docrac2 上的ggt表,通过golden gate 进行双向同步。
1.1 在docrac1/ docrac2配置:
在docrac1创建ggs 用户,在docrac2上创建ggt用户,存放复制的数据。
在docra1/docrac2上都创建ogg用户,并且赋予dba权限,作为golden gate的系统用户使用。
并且把两天数据库都改为归档模式,并且记录补充日志。命令如下:
Alter database archive log;
1.2 在docrac1/docrac2上分别使用下面步骤配置checkpoint table
按照所有replicat进程都使用同一个checkpoint的方法进行配置
在/backup/ggsrc目录里创建一个文件GLOBALS, 内容如下:
checkpointtable ogg.chkpt
在GGSIC中执行:
GGSCI (docrac2) 1> dblogin userid ogg@golden, password oracle
Successfully logged into database.
GGSCI (docrac2) 2> add checkpointtable
No checkpoint table specified, using GLOBALS specification (ogg.chkpt)...
Successfully created checkpoint table ogg.chkpt.
1.3 在docrac1/docrac2上配置 ext12 进程
1.3.1 在docrac1上配置参数文件ext12:
extract ext12
TRANLOGOPTIONS EXCLUDEUSER ogg
SETENV(NLS_LANG="AMERICAN_AMERICA.ZHS16GBK")
userid ogg@golden, password oracle
rmthost docrac2, mgrport 7777
rmttrail /backup/ggsrc/dirdat/e1
table ggs.*;
1.3.2 在docrac1上创建进程ext12:
add extract ext12 ,tranlog, begin now
add exttrail /backup/ggsrc/dirdat/e1, extract ext12
1.3.3 在docrac2 上为进程 ext21配置参数文件
extract ext21
TRANLOGOPTIONS EXCLUDEUSER ogg
SETENV(NLS_LANG="AMERICAN_AMERICA.ZHS16GBK")
userid ogg@golden, password oracle
rmthost docrac1, mgrport 7777
rmttrail /backup/ggsrc/dirdat/e2
table ggt.*;
1.3.4 在docrac2 上创建进程ext21
add extract ext21 ,tranlog, begin now
add exttrail /backup/ggsrc/dirdat/e2, extract ext21
1.4 在docrac1/docrac2配置replicat进程
1.4.1 在docrac1上配置参数文件rp12:
replicat rp12
setenv (NLS_LANG=AMERICAN_AMERICA.ZHS16GBK)
--setenv (NLS_LANG=en_US.UTF-8)
USERID ogg@golden,password oracle
HandleCollisions
AssumeTargetDefs
Map ggt.*, Target ggs.*;
1.4.2 在docrac1上创建进程rp12:
add replicat rp12,exttrail /backup/ggsrc/dirdat/e2
1.4.3 在docrac2上配置参数文件rp21:
replicat rp21
setenv (NLS_LANG=AMERICAN_AMERICA.ZHS16GBK)
--setenv (NLS_LANG=en_US.UTF-8)
USERID ogg@golden,password oracle
HandleCollisions
AssumeTargetDefs
Map ggs.*, Target ggt.*;
1.4.4 在docrac1上创建进程rp21:
add replicat rp21,exttrail /backup/ggsrc/dirdat/e1
1.5 分别用start 命令在docrac1上那启动进程 ext12, rp12
1.6 分别用start 命令在docrac2上启动进程 ext21, rp 21
1.7 检查同步情况:
1.7.1 在docrac1 上的golden 数据库的ggs.test 表插入一个条数据,会自动同步到docrac2 是上的golden 数据库的ggt.test表中。反之亦然。
1.7.2 如果没有在ext12和ext21进程中加一行TRANLOGOPTIONS EXCLUDEUSER ogg, 那么在一端出插入一条数据后,会循环插入这条数据,直到把extract进程停止。
1.7.3 正常运行各个进程状态信息如下:(只显示部分)
GGSCI (docrac1) 52> info ext12 detail
EXTRACT EXT12 Last Started 2014-11-16 21:35 Status RUNNING
Checkpoint Lag 00:00:00 (updated 00:00:06 ago)
Log Read Checkpoint Oracle Redo Logs
2014-11-16 21:37:57 Seqno 120, RBA 3716608
SCN 0.944704 (944704)
GGSCI (docrac1) 53> info rp12 detail
REPLICAT RP12 Last Started 2014-11-16 21:30 Status RUNNING
Checkpoint Lag 00:00:00 (updated 00:00:04 ago)
Log Read Checkpoint File /backup/ggsrc/dirdat/e2000002
2014-11-16 21:37:31.577970 RBA 1202
GGSCI (docrac2) 27> info ext21 detail
EXTRACT EXT21 Last Started 2014-11-16 21:36 Status RUNNING
Checkpoint Lag 00:00:00 (updated 00:00:04 ago)
Log Read Checkpoint Oracle Redo Logs
2014-11-16 21:46:07 Seqno 109, RBA 5080576
SCN 0.889184 (889184)
GGSCI (docrac2) 28> info rp21 detail
REPLICAT RP21 Last Started 2014-11-16 21:29 Status RUNNING
Checkpoint Lag 00:00:00 (updated 00:00:09 ago)
Log Read Checkpoint File /backup/ggsrc/dirdat/e1000002
2014-11-16 21:37:00.394692 RBA 1203
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/674865/viewspace-1336022/
,如需转载,请注明出处,否则将追究法律责任。