問題復(fù)現(xiàn):項(xiàng)目需要新增一張表的抽取,新建一個(gè)復(fù)制進(jìn)程接收源端的投遞數(shù)據(jù)橘荠,進(jìn)程狀態(tài)為RUNNING,可是源端表記錄變更后郎逃,目標(biāo)端無反應(yīng)哥童,排除extrail文件路徑錯(cuò)誤問題,鎖定問題在新增的replicat進(jìn)程(replic_4):
GGSCI (zoedb44.zoe.com) 24> info replic_4
REPLICAT REPLIC_4 Last Started 2017-07-15 09:27 Status RUNNING
Checkpoint Lag 00:00:00 (updated 00:00:00 ago)
Process ID 23031
Log Read Checkpoint File ./dirdat/ep000000000
First Record RBA 0
GGSCI (zoedb44.zoe.com) 25> info replic_3
REPLICAT REPLIC_3 Last Started 2017-07-14 20:55 Status RUNNING
Checkpoint Lag 00:00:00 (updated 00:00:08 ago)
Process ID 11727
Log Read Checkpoint File ./dirdat/ep000000018
2017-07-15 10:10:37.849362 RBA 15178
[oracle@zoedb44 dirdat]$ ls
ep000000010 ep000000012 ep000000014 ep000000016 ep000000018
ep000000011 ep000000013 ep000000015 ep000000017
解決方案:發(fā)現(xiàn)問題出在新建的進(jìn)程默認(rèn)由ep000000000開始讀取褒翰,而目標(biāo)端只保留最近一段時(shí)間的數(shù)據(jù)文件如蚜,因此新建進(jìn)程就停滯在那里压恒,手動(dòng)指定斷點(diǎn)從最近的數(shù)據(jù)文件開始讀取即可解決。
GGSCI>add replicat reemr01,exttrail ./dirdat/emr/ep,checkpointtable hdcogg.ggs_checkpoint, extseqno 38,extrba 1556977542
--修改myrep的讀檢查點(diǎn)
ALTER replicat myrep, EXTSEQNO 1234, EXTRBA 0
新增新系統(tǒng)進(jìn)行數(shù)據(jù)同步時(shí)错邦,添加的第一個(gè)replicat進(jìn)程不需要設(shè)置extseqno以及rba號(hào),因此此時(shí)進(jìn)程同步的隊(duì)列文件還不存在型宙,需要在添加新replicat進(jìn)程時(shí)指定新的隊(duì)列文件名稱撬呢。
在同一個(gè)同步系統(tǒng)中,增加第二個(gè)replicat進(jìn)程起妆兑,需要設(shè)置相應(yīng)檢查點(diǎn)并指定最近一個(gè)隊(duì)列號(hào)和rba號(hào)