Heim  >  Artikel  >  Datenbank  >  使用GoldenGate的数据泵进行Oracle-Oracle的单向复制

使用GoldenGate的数据泵进行Oracle-Oracle的单向复制

WBOY
WBOYOriginal
2016-06-07 17:32:501044Durchsuche

配置数据库环境、goldengate用户,安装goldengate等操作,使用数据泵进行Oracle-Oracle的单向复制所需的配置:--我这里只配置同步

配置数据库环境、goldengate用户,安装goldengate等操作,参考  这里面的1-4步。
使用数据泵进行Oracle-Oracle的单向复制所需的配置:--我这里只配置同步test3用户的 test3表。
1.主库的配置: #####配置Extract
按顺序执行以下操作:
add extract ext3,tranlog, begin now
add exttrail /u01/ogg/dirdat/bt, extract ext3
--这里会在本地/u01/ogg/dirdat/ 目录下生成bt*的文件,如果不使用PUMP,则add exttrail 和rmttail指定的一样,建立的trail都是目标端的,,

edit params ext3
在打开的编辑窗口写入以下:
extract ext3
userid ogg, password ogg
exttrail /u01/ogg/dirdat/bt
table test3.*;

#####配置PUMP ---使用数据泵时需要配置PUMP,比不使用多出这一步。
执行以下命令
add extract pump3,exttrailsource ./dirdat/bt
add rmttrail /u01/ogg/dirdat/bt, EXTRACT pump3

edit param pump3
在打开的编辑窗口写入以下--注意所使用的文件的路径
extract pump3
USERID ogg, PASSWORD ogg
PASSTHRU
RMTHOST 192.168.1.213, MGRPORT 7809, compress
rmttrail /u01/ogg/dirdat/bt
table test3.*;

#############################
2.目标库设置 edit params ./GLOBAL
在编辑窗口输入以下两行:
GGSCHEMA ogg
CHECKPOINTTABLE ogg.checkpoint

这里使用前面为OGG创建的用户来登陆,同时要注意路径和OGG安装路径的对照。
dblogin userid ogg,password ogg
add checkpointtable ogg.checkpoint
add replicat rep3,exttrail /u01/ogg/dirdat/bt, checkpointtable ogg.checkpoint

edit params rep3
在弹出编辑窗口输入以:---我这里只设置了同步test3用户的test3表--这里的用户和表名在下一步的测试中再建立。
replicat rep3
handlecollisions
ASSUMETARGETDEFS
userid ogg,password ogg
discardfile /u01/ogg/dirdat/rep3_discard.txt,append, megabytes 10
map test3.test3, target test3.test3;
启动时先启动目标库的应用进程,再启动主库的PUMP及抽取进程。
3.同步测试: 首先在主库及目标库创建用户和表,示例如下:
create user test3 identified by test3;
grant connect,resource to test3;
BYS@bys1>conn test3/test3
Connected.
TEST3@bys1>create table test3(aa varchar2(10) primary key);
###############
源库:
TEST3@bys1>set time on
16:52:21 TEST3@bys1>select * from test3;
no rows selected
16:52:26 TEST3@bys1>
16:53:07 TEST3@bys1>insert into test3 values('is-ok');
1 row created.
16:53:29 TEST3@bys1>commit;
Commit complete.

#####################

目标库:

TEST3@bys2>set time on
16:52:30 TEST3@bys2>select * from test3;
no rows selected
16:52:34 TEST3@bys2>
16:53:33 TEST3@bys2>select * from test3;
no rows selected
16:53:34 TEST3@bys2>select * from test3;
AA
--------------------
is-ok
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn