目的端配置大致分为如下三个步骤:配置mgr,配置checkpoint table,配置应用进程
在目的端先创建一张表,记得带主键:
mysql> create database hr;
Query OK, 1 row affected (0.00 sec)
mysql> use hr
Database changed
mysql> create table ah4(id int ,name varchar(10),primary key(id));
Query OK, 0 rows affected (0.00 sec)
mysql> show tables;
+--------------+
| Tables_in_hr |
+--------------+
| ah4 |
+--------------+
1 row in set (0.00 sec)
mysql>
1.配置mgr
GGSCI (nosql2) 2> edit params mgr
PORT7809DYNAMICPORTLIST7810-7909--AUTOSTART ER *
AUTORESTART EXTRACT *,RETRIES 5,WAITMINUTES 3PURGEOLDEXTRACTS ./dirdat/*,usecheckpoints, minkeepdays 3LAGREPORTHOURS1LAGINFOMINUTES30LAGCRITICALMINUTES45GGSCI (nosql2)3> start mgr
Manager started.
GGSCI (nosql2)4> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
2.配置checkpoint table
GGSCI (nosql2) 7> edit params ./GLOBALS
CHECKPOINTTABLE hr.checkpoint
添加:
GGSCI (nosql2) 8> add checkpointtable hr.checkpointtab
Successfully created checkpoint table hr.checkpointtab.
GGSCI (nosql2)9> info checkpointtable hr.checkpointtab
Checkpoint table hr.checkpointtab created2014-04-02 16:11:38.
GGSCI (nosql2)10>
在相应的mysql数据库中,也可以看到相应的表被添加了:
mysql> show tables;+---------------+
| Tables_in_hr |
+---------------+
| ah4 |
| checkpointtab |
+---------------+2 rows in set (0.00 sec)
3.配置应用进程:
GGSCI (nosql2) 10> edit params rep3
replicat rep3
sourcedefs /u01/ogg/11.2/dirdef/ah4.prm
SOURCEDB hr,userid root,password 123456reperror default,discard
discardfile /u01/ogg/11.2/dirrpt/rep4.dsc,append,megabytes 50map hr.ah4, target hr.ah4;
GGSCI (nosql2) 13> add replicat rep3,exttrail /u01/ogg/11.2/dirdat/xs,checkpointtable hr.checkpointtab
REPLICAT added.
PS:
REPLICAT进程参数配置说明:
ASSUMETARGETDEFS:假定两端数据结构一致使用此参数;
SOURCEDEFS:假定两端数据结构不一致,使用此参数指定源端的数据结构定义文件,该文件需要由GlodenGate工具产生。
MAP:用于指定源端与目标端表的映射关系;
MAPEXCLUDE:用于使用在MAP中使用*匹配时排除掉指定的表;
REPERROR:定义出错以后进程的响应,一般可以定义为两种:
ABEND,即一旦出现错误即停止复制,此为缺省配置;
DISCARD,出现错误后继续复制,只是把错误的数据放到discard文件中。
DISCARDFILE:定义discardfile文件位置,如果处理中油记录出错会写入到此文件中;
SQLEXEC:在进程运行时首先运行一个SQL语句;
GROUPTRANSOPS:将小交易合并成一个大的交易进行提交,减少提交次数,降低系统IO消耗。
MAXTRANSOPS:将大交易拆分,每XX条记录提交一次。
4.测试
在目的端启动rep3进程,在源端启动ext3和push3进程。
在源端的ah4表中插入一条数据,看是否在目的端的ah4表中能看到。
源端进程:
GGSCI (ora11g) 30> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
EXTRACT RUNNING EXT100:00:00 00:00:03EXTRACT RUNNING EXT200:00:00 00:00:07EXTRACT RUNNING EXT300:44:09 00:00:06EXTRACT RUNNING PUSH100:00:00 00:00:03EXTRACT RUNNING PUSH200:00:00 00:00:03EXTRACT RUNNING PUSH300:00:00 00:37:40GGSCI (ora11g)31>
源端插入数据:
SQL> insert into ah4 values(1,'aaaccc');
1row created.
SQL> commit;Commit complete.
源端的ogg日志:
2014-04-02 16:19:26 INFO OGG-00993 Oracle GoldenGate Capture for Oracle,ext3.prm: EXTRACT EXT3 started.2014-04-02 16:19:26 INFO OGG-01052 Oracle GoldenGate Capture for Oracle, ext3.prm: No recovery is required for target file /u01/ogg/11.2/dirdat/xs000000, at RBA 0(file not opened).2014-04-02 16:19:26 INFO OGG-01478 Oracle GoldenGate Capture for Oracle, ext3.prm: Output file /u01/ogg/11.2/dirdat/xs is using format RELEASE 11.2.2014-04-02 16:19:26 INFO OGG-01517 Oracle GoldenGate Capture for Oracle, ext3.prm: Position of first record processed Sequence 1122, RBA 14423056, SCN 0.20548956, Apr 2, 2014 3:35:22PM.2014-04-02 16:19:29 INFO OGG-00987Oracle GoldenGate Command Interpreter for Oracle: GGSCI command (oracle): start push3.2014-04-02 16:19:29 INFO OGG-00963 Oracle GoldenGate Manager for Oracle, mgr.prm: Command received from GGSCI on host ora11g:52177(START EXTRACT PUSH3 ).2014-04-02 16:19:29 INFO OGG-00975 Oracle GoldenGate Manager for Oracle,mgr.prm: EXTRACT PUSH3 starting.2014-04-02 16:19:29 INFO OGG-00992 Oracle GoldenGate Capture for Oracle,push3.prm: EXTRACT PUSH3 starting.2014-04-02 16:19:29 INFO OGG-03035 Oracle GoldenGate Capture for Oracle, push3.prm: Operating system character set identified as UTF-8. Locale: en_US,LC_ALL:.2014-04-02 16:19:29 INFO OGG-01815 Oracle GoldenGate Capture for Oracle,push3.prm: Virtual Memory Facilities for: COM
anon alloc: mmap(MAP_ANON) anon free: munmap
file alloc: mmap(MAP_SHARED) file free: munmap
target directories:
/u01/ogg/11.2/dirtmp.2014-04-02 16:19:29 INFO OGG-00993 Oracle GoldenGate Capture for Oracle,push3.prm: EXTRACT PUSH3 started.2014-04-02 16:19:34 INFO OGG-01226 Oracle GoldenGate Capture for Oracle, push3.prm: Socket buffer size set to 27985 (flush size 27985).2014-04-02 16:19:34 INFO OGG-01052 Oracle GoldenGate Capture for Oracle, push3.prm: No recovery is required for target file /u01/ogg/11.2/dirdat/xs000000, at RBA 0(file not opened).2014-04-02 16:19:34 INFO OGG-01478 Oracle GoldenGate Capture for Oracle, push3.prm: Output file /u01/ogg/11.2/dirdat/xs is using format RELEASE 11.2.
目的端进程:
GGSCI (nosql2) 21> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
REPLICAT RUNNING REP300:00:00 00:00:02GGSCI (nosql2)22>
目的端数据库:
mysql> select * from ah4;+----+--------+
| id | name |
+----+--------+
|1| aaaccc |
+----+--------+1 row in set (0.00sec)
mysql>
目的端的ogg日志:
2014-04-02 16:21:55 INFO OGG-00975 Oracle GoldenGate Manager for MySQL,mgr.prm: REPLICAT REP3 starting.2014-04-02 16:21:55 INFO OGG-00995 Oracle GoldenGate Delivery for MySQL,rep3.prm: REPLICAT REP3 starting.2014-04-02 16:21:55 INFO OGG-03035 Oracle GoldenGate Delivery for MySQL, rep3.prm: Operating system character set identified as UTF-8. Locale: en_US,LC_ALL:.2014-04-02 16:21:55 INFO OGG-01815 Oracle GoldenGate Delivery for MySQL,rep3.prm: Virtual Memory Facilities for: COM
anon alloc: mmap(MAP_ANON) anon free: munmap
file alloc: mmap(MAP_SHARED) file free: munmap
target directories:
/u01/ogg/11.2/dirtmp.2014-04-02 16:21:55 INFO OGG-00996 Oracle GoldenGate Delivery for MySQL,rep3.prm: REPLICAT REP3 started.2014-04-02 16:22:17 INFO OGG-00963 Oracle GoldenGate Manager for MySQL, mgr.prm: Command received from EXTRACT on host ::ffff:192.168.0.164 (START SERVER CPU -1 PRI -1 TIMEOUT 300PARAMS ).2014-04-02 16:22:17 INFO OGG-01677Oracle GoldenGate Collector for MySQL: Waiting for connection (started dynamically).2014-04-02 16:22:17 INFO OGG-00963 Oracle GoldenGate Manager for MySQL, mgr.prm: Command received from SERVER on host localhost.localdomain (REPORT 30868 7810).2014-04-02 16:22:17 INFO OGG-00974 Oracle GoldenGate Manager for MySQL, mgr.prm: Manager started collector process (Port 7810).2014-04-02 16:22:17 INFO OGG-01228 Oracle GoldenGate Collector for MySQL: Timeout in 300seconds.2014-04-02 16:22:22 INFO OGG-01229 Oracle GoldenGate Collector for MySQL: Connected to ::ffff:192.168.0.164:61104.2014-04-02 16:22:22 INFO OGG-01669 Oracle GoldenGate Collector for MySQL: Opening /u01/ogg/11.2/dirdat/xs000000 (byte -1, current EOF 0).2014-04-02 16:22:53 INFO OGG-03010 Oracle GoldenGate Delivery for MySQL, rep3.prm: Performing implicit conversion of column data from character set windows-936 to ISO-8859-1.