ogg的extract的拆分方法

ogg的extract的拆分方法

0.背景

OGG 在部署以后,随着业务压力的增大,可能需要增加多个group来处理数据同步,在这种情况下,就需要对原有的OGG 进程拆分,同时也不能导致数据同步出现问题。

1. 停止extract进程

GGSCI (ogg1) 2> stop ext1

2. 停止datapump进程

这里要等到投递进程投递完成才能停止,如果在没有投递完成的情况下停止会丢数据

GGSCI (ogg1) 4> info dpump

EXTRACT DPUMP Last Started 2014-03-27 20:00 Status RUNNING

Checkpoint Lag 00:00:00 (updated 00:00:02 ago)

Process ID 20746

Log Read Checkpoint File /u01/ggs/dirdat/lt000009

2014-03-27 20:01:36.000000 RBA 19719

多次执行命令查看rba是否一致,如果一致说明投递完成,那么就可以停止

GGSCI (ogg1) 7> stop dpump

3. 记录extract检查点

Extract检查点包括:Recovery Checkpoint: Sequence 和RBA

                  Current Checkpoint : Sequence 和RBA

Current Checkpoint Detail:

Read Checkpoint #1

  Oracle Redo Log

  Startup Checkpoint (starting position in the data source):

    Thread #: 1

    Sequence #: 53

    RBA: 25012752

    Timestamp: 2014-03-27 19:59:43.000000

    SCN: 0.2085381 (2085381)

    Redo File: /u01/app/oracle/oradata/dave/redo02.log

  Recovery Checkpoint (position of oldest unprocessed transaction in the data source):

    Thread #: 1

    Sequence #: 53

    RBA: 28138512

    Timestamp: 2014-03-27 20:10:52.000000

    SCN: 0.2086075 (2086075)

    Redo File: /u01/app/oracle/oradata/dave/redo02.log

  Current Checkpoint (position of last record read in the data source):

    Thread #: 1

    Sequence #: 53

    RBA: 28141568

    Timestamp: 2014-03-27 20:10:55.000000

    SCN: 0.2086077 (2086077)

    Redo File: /u01/app/oracle/oradata/dave/redo02.log

4. 修改原有相应的参数文件,将拆分出的表从参数文件中删除

ext1进程

之前的

GGSCI (ogg1) 12> view param ext1

extract ext1

userid ggs@ogg1, password ggs

exttrail /u01/ggs/dirdat/lt

ddl include mapped objname sender.*;

table sender.*;

修改的

GGSCI (ogg1) 18> view param ext1

extract ext1

userid ggs@ogg1, password ggs

exttrail /u01/ggs/dirdat/lt

ddl include mapped objname sender.*;

table sender.dave1;

dpump进程

之前的

GGSCI (ogg1) 13> view param dpump

extract dpump

userid ggs@ogg1, password ggs

rmthost 192.168.2.62, mgrport 7809

rmttrail /u01/ggs/dirdat/rt

passthru

table sender.*;

dynamicresolution

修改的

GGSCI (ogg1) 19> view param dpump

extract dpump

userid ggs@ogg1, password ggs

rmthost 192.168.2.62, mgrport 7809

rmttrail /u01/ggs/dirdat/rt

passthru

table sender.dave1;

dynamicresolution

5. 增加新的extract,datapump

5.1添加Extract 进程

GGSCI (ogg1) 22> add extract ext3,tranlog, begin now

EXTRACT added.

GGSCI (ogg1) 23> add exttrail /u01/ggs/dirdat/E3, extract ext3

EXTTRAIL added.

5.2修改抽取进程ext3参数:

GGSCI (ogg1) 26> view param ext3

extract ext3

userid ggs@ogg1, password ggs

exttrail /u01/ggs/dirdat/E3

ddl include mapped objname sender.*;

table sender.dave2;

5.3添加Pump 进程

GGSCI (ogg1) 28> add extract pump3,exttrailsource /u01/ggs/dirdat/E3

EXTRACT added.

GGSCI (ogg1) 29> add rmttrail /u01/ggs/dirdat/E3, extract pump3,megabytes 10

RMTTRAIL added.

5.4配置Data Pump 参数:

GGSCI (gg1) 56> view params dpump

extract pump3

userid ggs@ogg1, password ggs

rmthost 192.168.2.62, mgrport 7809

rmttrail /u01/ggs/dirdat/E3

passthru

table sender.dave2;

dynamicresolution

6. 修改新增extract进程的检查点

检查点为上面记录的两个检查点:current read checkpoint 和 recovery checkpoint

6.1 修改current read checkpoint

GGSCI (ogg1) 34> alter ext3 extseqno 53, extrba 28141568[, thread n]  

这里是重点 

EXTRACT altered.  

6.2 修改recovery checkpoint

GGSCI (ogg1) 35> alter ext3 ioextseqno 53, ioextrba 28138512 [, thread n]

7. 确认所有参数文件正确,启动进程即可

GGSCI (ogg1) 37> start *   
 

相关参考:

https://sqlora.blog.csdn.net/article/details/89633533

https://sqlora.blog.csdn.net/article/details/89634407

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值