trail文件序列号不一致

Posted williamzheng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了trail文件序列号不一致相关的知识,希望对你有一定的参考价值。

一、Cause

在某些情况下,对于一个已经running的OGG进程,对已同步的数据(正确的同步或者错误的同步)做修改,修改完之后,需要保持一个一致点,从一致点继续同步。
这时需要人工干涉产生一个新的extract trail文件,EXTRACT和REPLICAT进程都从该新文件中读取数据。

etrollover可以再重新启动抽取进程时自动生成一个新的trail文件。

同时会提示并且必须指定datapump和replicat进程的seqno序号。

注意: 源端的trail文件序列号可能和目标端的trail文件序列号不一致。所以在指定extseqno时,需要根据各自dirdat目录下当前的序号而定。

源端:

alter extract extname,etrollover #抽取进程trail文件号自动加1
alter extract dumpname,etrollover #datapump进程trail文件号自动加1 
alter extract dumpname, extseqno xx, extrba 0 #指定datapump进程的序列号和日志位置。可以通过send <进程名>,status查看

目标端:

alter replicat repname, extseqno XX, extrba 0 #同datapump,需要在目标端的dirdat下看新生成的trail文件序号。extrba也可以通过logdump工具来查看

二、Example

2.1目标端trail文件序列号和源端不一致

2.1.1源端查看trail文件的序列号是1181

GGSCI (oggmaster) 24> send PUMPWH1,status

Sending STATUS request to EXTRACT PUMPWH1 ...


EXTRACT PUMPWH1 (PID 10088)
  Current status: Recovery complete: Processing data

  Current read position:
  Sequence #: 1129
  RBA: 630751643
  Timestamp: 2019-07-18 18:24:08.000000
  Extract Trail: /u01/app/oracle/oggmaster/gglog/wh

  Current write position:
  Sequence #: 1181
  RBA: 1247
  Timestamp: 2019-07-18 18:29:04.005628
  Extract Trail: /u01/gglog/wh

2.1.2目标端查看trail文件的序列号是1178

GGSCI (ogg1) 102> send REPWH1,status

Sending STATUS request to REPLICAT REPWH1 ...
  Current status: Processing data
  Sequence #: 1178
  RBA: 1334243070
  23409 records in current transaction

2.1.3在目标端修改trail文件的序列号为1181,保持跟源端一致

**注意:** 需要在进程状态为ABENDED或者STOPPED下
GGSCI (ogg1) 111> alter replicat REPWH1, extseqno 1181, extrba 132066972
REPLICAT altered.

2.1.4启动目标端REPLICAT进程并查看序列号

GGSCI (ogg1) 114> start REPWH1

Sending START request to MANAGER ...
REPLICAT REPWH1 starting


GGSCI (ogg1) 115> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     RUNNING                                           
REPLICAT    RUNNING     REPWH1      00:00:00      00:00:17

GGSCI (ogg1) 117> send REPWH1,status

Sending STATUS request to REPLICAT REPWH1 ...
  Current status: Processing data
  Sequence #: 1181
  RBA: 132066972
  0 records in current transaction

以上是关于trail文件序列号不一致的主要内容,如果未能解决你的问题,请参考以下文章

fix bug:Redis序列化算法不一致导致乱码问题的原因及自定义序列化解决方案

XML(反)序列化无效字符串在c#中不一致?

Django、TinyMCE 字段序列化不一致

Java序列化,碰到serialVersionUID不一致怎么处理?

Python文件对比

合并两个不同时间粒度的时间序列