(二)OGG双向DML复制操作

来源:互联网 发布:linux系统添加用户组 编辑:程序博客网 时间:2024/06/05 06:31

实验目的:在两台虚机模拟实现简单的双向DML复制  (接上一篇《(一)OGG的安装与配置,并实现单向DML复制操作》)。

说明:因《(一)OGG的安装与配置,并实现单向DML复制操作中已配置过单向的dml操作,所以本次配置内容在前一篇的基础之上。 (本次只需配置一次反向的操作即可:oggtarget为源端,  oggsource为目标端)


实验环境:64位系统
     操作系统:rhel6.6-x86_64
     数据库:oracle_11.2-x86-64
     goldengate:for_11g_x64


配置步骤:
1、

源端:
检查数据库是否在归档模式,建议在归档模式。

SQL> archive log list;Database log mode              ArchiveMode  --已归档Automatic archival             EnabledArchive destination            USE_DB_RECOVERY_FILE_DESTOldest online log sequence     19Next log sequence to archive   21Current log sequence           21


2、
源端:
添加附加日志来唯一标识一行记录,要在数据库级别打开最小开关。

SQL> alter database add supplemental log data;Database altered.


3、
源端:

测试数据用的是OGG_USER用户的表数据(OGG_USER用户下只有T1一个表)。
查看要复制的表的日志信息是完整的,确保是logging。把nologing变成logging。

SQL> alter table ogg_user.t1 logging;Table altered.


4、
源端:

以goldengate这个schema登陆数据库。

GGSCI (oggtarget.localdomain) 4> dblogin userid goldengate,password goldengateSuccessfully logged into database. GGSCI (oggtarget.localdomain)5> add trandata ogg_user.*Logging of supplemental redo data enabled for table OGG_USER.T1.


5、

源端:
配置抓取进程。

GGSCI (oggtarget.localdomain) 11> add extract ext_rev, tranlog, begin now,threads 1EXTRACT added.GGSCI (oggtarget.localdomain) 12> info all Program    Status      Group       Lag at Chkpt  Time Since Chkpt MANAGER    RUNNING                                          EXTRACT    STOPPED     EXT_REV    00:00:00      00:00:13



6、

源端:
添加队列文件。

GGSCI (oggtarget.localdomain) 13> add EXTTRAIL ./dirdat/rv, extract ext_rev,megabytes100EXTTRAIL added.


7、

源端:
编辑我们刚刚配置的抓取进程的参数:

GGSCI (oggtarget.localdomain) 14> edit param ext_revEXTRACT ext_revsetenv (ORACLE_SID=oggt)setenv (NLS_LANG=AMERICAN_AMERICA.ZHS16GBK)userid goldengate,password goldengateREPORTCOUNT EVERY 1 MINUTES, RATEnumfiles 5000DISCARDFILE ./dirrpt/ext_rev.dsc,APPEND,MEGABYTES1000DISCARDROLLOVER AT 3:00exttrail ./dirdat/rv,megabytes 100dynamicresolutionTRANLOGOPTIONS EXCLUDEUSER goldengateTRANLOGOPTIONS convertucs2clobsTABLE OGG_USER.*;


8、

源端:
启动抓取进程:

GGSCI (oggtarget.localdomain) 15> start ext_rev Sending START request to MANAGER ...EXTRACT EXT_REV starting  GGSCI (oggtarget.localdomain) 16> info all Program    Status      Group      Lag at Chkpt  Time Since ChkptMANAGER    RUNNING                                          EXTRACT     RUNNING    EXT_REV     00:00:01      00:00:01   

9、

源端:
配置datapump进程,将抓取数据传到目标主机。负责TCPIP通讯。

GGSCI (oggtarget.localdomain) 17> add extract dpe_rev, exttrailsource ./dirdat/rvEXTRACT added.


输出:目标主机怎么写,也是定义datapumo进程的输出。

GGSCI (oggtarget.localdomain) 18> add rmttrail ./dirdat/tv,EXTRACT dpe_rev,MEGABYTES100RMTTRAIL added.


10、

源端:
配置datapump进程参数:

GGSCI (oggtarget.localdomain) 19> edit param dpe_revextract dpe_revdynamicresolutionpassthrurmthost 192.168.103.106, mgrport 7839,compressrmttrail ./dirdat/tvnumfiles 5000TABLE OGG_USER.*;GGSCI (oggtarget.localdomain) 20> start dpe_rev Sending START request to MANAGER ...EXTRACT DPE_REV starting  GGSCI (oggtarget.localdomain) 21> info all Program    Status      Group       Lag at Chkpt  Time Since Chkpt MANAGER    RUNNING                                          EXTRACT     RUNNING    DPE_REV     00:00:00      00:02:50   EXTRACT    RUNNING     EXT_REV     00:00:00      00:00:07    

11、

目标端:
为replicat进程创建checkpoint表:

GGSCI (oggsource.localdomain) 1> dblogin userid goldengate,password goldengateSuccessfully logged into database. GGSCI (oggsource.localdomain) 2> add checkpointtable goldengate.rep_rev_ckptSuccessfully created checkpoint tablegoldengate.rep_rev_ckpt.


12、

目标端:
配置目标端replicate进程:

GGSCI (oggsource.localdomain) 3> add replicat rep_rev,exttrail./dirdat/tv,checkpointtable goldengate.rep_rev_ckptREPLICAT added.


13、

目标端:
配置目标端replicate参数:

GGSCI (oggsource.localdomain) 4> edit param rep_revREPLICAT rep_revSETENV (ORACLE_SID=oggs)SETENV (NLS_LANG ="AMERICAN_AMERICA.ZHS16GBK")USERID goldengate,PASSWORD goldengateREPORTCOUNT EVERY 30 MINUTES, RATEREPERROR DEFAULT, ABENDnumfiles 5000--HANDLECOLLISIONSassumetargetdefsDISCARDFILE ./dirrpt/rep_rev.dsc, APPEND,MEGABYTES 1000ALLOWNOOPUPDATESMAP OGG_USER.*,TARGET OGG_USER.*;

 

14、
目标端:
启动并查看replicate进程是否运行:

GGSCI (oggsource.localdomain) 5> start rep_rev Sending START request to MANAGER ...REPLICAT REP_REV starting GGSCI (oggsource.localdomain) 6> info all Program    Status      Group       Lag at Chkpt  Time Since Chkpt MANAGER    RUNNING                                          REPLICAT    RUNNING    REP_REV     00:00:00      00:00:05  


15、 测试源端和目标端的数据。

源端:

SQL> insert into ogg_user.t1 values(4,'d',40);1 row created. SQL> commit;Commit complete. SQL> alter system switch logfile;System altered. SQL> select * from ogg_user.t1;       ID NAME           SALARY---------- ---------- ----------        3 c                 300        4 d                  40        1 a                  10        2 b                  20

目标端:

SQL> select * from ogg_user.t1;       ID NAME           SALARY---------- ---------- ----------        1 a                  10        2 b                  20        3 c                 300        4 d                  40

16、
测试数据同步,实现了双向的DML复制。

0 0
原创粉丝点击