Oraclle11gR2_为GoldenGate源端添加pump进程二

来源:互联网 发布:通信协议和网络协议 编辑:程序博客网 时间:2024/06/05 18:27
      Oraclle11gR2_为GoldenGate源端添加pump进程二

前面测试过通过删除源端和目标端的进程并重建的方法添加PUMP进程,这里测试不删除源端和目标端的GoldenGate进程,而直接添加pump进程的过程。

1、删除原测试环境的进程

1.1 删除源端


GGSCI (oraclesrc) 1> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     RUNNING                                           
EXTRACT     RUNNING     EXT1        00:00:00      00:00:02    
EXTRACT     RUNNING     PUMP1       00:00:00      00:00:07    


GGSCI (oraclesrc) 2> stop ext1

Sending STOP request to EXTRACT EXT1 ...
Request processed.


GGSCI (oraclesrc) 3> stop pump1

Sending STOP request to EXTRACT PUMP1 ...
Request processed.


GGSCI (oraclesrc) 4> delete ext1

2015-04-10 09:16:26  WARNING OGG-01753  Cannot unregister EXTRACT EXT1 from database because no database login was provided. You can manually unregister this group later with the UNREGISTER EXTRACT command with LOGRETENTION. Issue DBLOGIN first.
Deleted EXTRACT EXT1.


GGSCI (oraclesrc) 5> delete pump1

2015-04-10 09:16:29  WARNING OGG-01753  Cannot unregister EXTRACT PUMP1 from database because no database login was provided. You can manually unregister this group later with the UNREGISTER EXTRACT command with LOGRETENTION. Issue DBLOGIN first.
Deleted EXTRACT PUMP1.

1.2 删除目标端


GGSCI (oracledest) 1> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     RUNNING                                           
REPLICAT    RUNNING     REP1        00:00:00      00:00:09    


GGSCI (oracledest) 2> dblogin userid ogg@oradest,password ogg
Successfully logged into database.

GGSCI (oracledest) 3> delete checkpointtable ogg.checkpoint
This checkpoint table may be required for other installations.  Are you sure you want to delete this checkpoint table? yes

Successfully deleted checkpoint table ogg.checkpoint.

GGSCI (oracledest) 4> view params ./globals

GGSCHEMA OGG
CHECKPOINTTABLE OGG.CHECKPOINT


GGSCI (oracledest) 5> add checkpointtable ogg.checkpoint

Successfully created checkpoint table ogg.checkpoint.

GGSCI (oracledest) 7> stop rep1

Sending STOP request to REPLICAT REP1 ...
Request processed.


GGSCI (oracledest) 8> delete rep1
Deleted REPLICAT REP1.


2、配置不使用pump进程的单向同步

2.1 源端配置


GGSCI (oraclesrc) 7> add extract ext1,tranlog,begin now
EXTRACT added.

GGSCI (oraclesrc) 8> add rmttrail /u01/ogg/dirdat/lt,extract ext1
EXTTRAIL added.

GGSCI (oraclesrc) 11> view params ext1

extract ext1
userid ogg@orasrc, password ogg
rmthost 172.26.181.103, mgrport 7809
rmttrail /u01/ogg/dirdat/lt
ddl include mapped objname test.*;
table test.*;

2.2 目标端配置

GGSCI (oracledest) 10> add replicat rep1,exttrail /u01/ogg/dirdat/lt,checkpointtable ogg.checkpoint
REPLICAT added.

GGSCI (oracledest) 12> view params rep1

replicat rep1
ASSUMETARGETDEFS
userid ogg@oradest,password ogg
discardfile /u01/ogg/dirdat/rep1_discard.txt,append,megabytes 10
DDL
map test.*,target test.*;

2.3 启用进程并测试同步

启用各进程之前删除两端所有trail文件:

[root@oraclesrc dirdat]# rm -rf lt*

[root@oracledest dirdat]# rm -rf lt*

启用源端进程:

GGSCI (oraclesrc) 12> start ext1

Sending START request to MANAGER ...
EXTRACT EXT1 starting

启用目标端进程:

GGSCI (oracledest) 13> start rep1

Sending START request to MANAGER ...
REPLICAT REP1 starting

单向同步测试的过程这里就不记录了。


3、在源端添加pump进程

3.1 修改ext1进程

改为本地trail

GGSCI (oraclesrc) 19> stop ext1

Sending STOP request to EXTRACT EXT1 ...
Request processed.


修改ext1参数配置

GGSCI (oraclesrc) 20> view params ext1

extract ext1
userid ogg@orasrc, password ogg
--rmthost 172.26.181.103, mgrport 7809
--rmttrail /u01/ogg/dirdat/lt
exttrail /u01/ogg/dirdat/lt
ddl include mapped objname test.*;
table test.*;

创建pump进程

GGSCI (oraclesrc) 21> add extract pump1,exttrailsource /u01/ogg/dirdat/lt      
EXTRACT added.


GGSCI (oraclesrc) 22> add rmttrail /u01/ogg/dirdat/lt,extract pump1
RMTTRAIL added.

GGSCI (oraclesrc) 24> view params pump1

extract pump1
userid ogg@orasrc, password ogg
rmthost 172.26.181.103, mgrport 7809
rmttrail /u01/ogg/dirdat/lt
passthru
table test.*;

启动ext1:

GGSCI (oraclesrc) 29> start ext1

Sending START request to MANAGER ...
EXTRACT EXT1 starting

可以看到ext1挂了:

GGSCI (oraclesrc) 30> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     RUNNING                                           
EXTRACT     ABENDED     EXT1        00:00:00      00:01:41    
EXTRACT     STOPPED     PUMP1       00:00:00      00:05:09    

GGSCI (oraclesrc) 31> view report ext1

...
2015-04-10 09:55:50  ERROR   OGG-01496  Failed to open target trail file /u01/og
g/dirdat/lt000000, at RBA 1146.

2015-04-10 09:55:50  ERROR   OGG-01668  PROCESS ABENDING.

原因:因为此时ext1要写本地trail,但是之前trail是直接发送到远程,本地没有这个trail,因此会报这个错。

注意:这里的lt000000和RBA 1146,表示ext1进程要从文件000000的RBA1146开始写文件。

拷贝目标端上的trail到源端:

[oracle@oracledest dirdat]$ scp lt000000 172.26.181.101:/u01/ogg/dirdat
oracle@172.26.181.101's password:
lt000000                                      100% 1146     1.1KB/s   00:00   

ext1可以正常启动了:

GGSCI (oraclesrc) 33> start ext1

Sending START request to MANAGER ...
EXTRACT EXT1 starting

启动pump1进程:

GGSCI (oraclesrc) 39> start pump1

Sending START request to MANAGER ...
EXTRACT PUMP1 starting

GGSCI (oraclesrc) 40> info pump1

EXTRACT    PUMP1     Last Started 2015-04-10 10:09   Status RUNNING
Checkpoint Lag       00:00:00 (updated 00:00:01 ago)
Log Read Checkpoint  File /u01/ogg/dirdat/lt000000
                     First Record  RBA 0


pump1进程可以正常启动,但是RBA为0,表示pump1进程将从RBA0开始向远程trail写记录。


几秒钟后:

GGSCI (oraclesrc) 49> info pump1

EXTRACT    PUMP1     Last Started 2015-04-10 10:09   Status RUNNING
Checkpoint Lag       00:00:00 (updated 00:00:06 ago)
Log Read Checkpoint  File /u01/ogg/dirdat/lt000001
                     2015-04-10 10:02:03.068939  RBA 1087

                    
此时在做一次同步测试,通过了!

测试中虽然重建了pump1进程,其检查点与原来的ext1进程不一样,但是却会自动同步。



4、查看PUMP进程同步过程

查询ext1日志:

2015-04-10 10:02:02  WARNING OGG-01423  No valid default archive log destination
 directory found for thread 1.

2015-04-10 10:02:03  INFO    OGG-01513  Positioning to Sequence 39, RBA 22404112
, SCN 0.1611680.

2015-04-10 10:02:03  INFO    OGG-01516  Positioned to Sequence 39, RBA 22404112,
 SCN 0.1611680, Apr 10, 2015 9:53:36 AM.

2015-04-10 10:02:03  INFO    OGG-01055  Recovery initialization completed for ta
rget file /u01/ogg/dirdat/lt000000, at RBA 1146.

2015-04-10 10:02:03  INFO    OGG-01478  Output file /u01/ogg/dirdat/lt is using
format RELEASE 11.2.

2015-04-10 10:02:03  INFO    OGG-01026  Rolling over remote file /u01/ogg/dirdat
/lt000000.

2015-04-10 10:02:03  INFO    OGG-01053  Recovery completed for target file /u01/
ogg/dirdat/lt000001, at RBA 1087.

2015-04-10 10:02:03  INFO    OGG-01057  Recovery completed for all targets.


查询pump1日志:

2015-04-10 10:09:47  INFO    OGG-01226  Socket buffer size set to 27985 (flush s
ize 27985).

2015-04-10 10:09:47  INFO    OGG-01056  Recovery initialization completed for ta
rget file /u01/ogg/dirdat/lt000000, at RBA 1146, CSN 1610795.

2015-04-10 10:09:47  INFO    OGG-01478  Output file /u01/ogg/dirdat/lt is using
format RELEASE 11.2.

2015-04-10 10:09:47  WARNING OGG-01438  Checkpoint marked as from graceful shutd
own, but records found after checkpoint in trail /u01/ogg/dirdat/lt.  Expected E
OF Seqno 0, RBA 0.  Found Seqno 0, RBA 1146.

2015-04-10 10:09:47  INFO    OGG-01026  Rolling over remote file /u01/ogg/dirdat
/lt000001.


Opened trail file /u01/ogg/dirdat/lt000000 at 2015-04-10 10:09:47
Wildcard TABLE resolved (entry test.*):
  table "TEST"."T1";
PASSTHRU mapping resolved for source table TEST.T1

2015-04-10 10:09:47  INFO    OGG-01054  Recovery completed for target file /u01/
ogg/dirdat/lt000001, at RBA 1430, CSN 1610795.

2015-04-10 10:09:47  INFO    OGG-01057  Recovery completed for all targets.

Switching to next trail file /u01/ogg/dirdat/lt000001 at 2015-04-10 10:09:47 due
 to EOF, with current RBA 1146
Opened trail file /u01/ogg/dirdat/lt000001 at 2015-04-10 10:09:47
                    




0 0