使用goldengate的資料泵進行Oracle-Oracle的單向複製

還不算暈發表於2013-10-28
配置資料庫環境、goldengate使用者,安裝goldengate等操作,參考http://blog.csdn.net/q947817003/article/details/13293751這裡面的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都是目標端的,http://blog.csdn.net/q947817003/article/details/13294433

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

相關文章