GoldenGate SQL error 01296 mapping 錯誤解決

秋去天無邊發表於2016-05-26
GoldenGate SQL error 01296 mapping 錯誤解決

2014-11-05 16:00:37  WARNING OGG-01004  Oracle GoldenGate Delivery for MySQL, rep2my.prm:  Aborted grouped transaction on 'sender.TEST', Database error 1062 ([SQL error 1062]Duplicate entry '4' for key 'PRIMARY').
2014-11-05 16:00:37  WARNING OGG-01003  Oracle GoldenGate Delivery for MySQL, rep2my.prm:  Repositioning to rba 1078 in seqno 1.
2014-11-05 16:00:37  WARNING OGG-01154  Oracle GoldenGate Delivery for MySQL, rep2my.prm:  SQL error 1062 mapping SENDER.TEST to sender.TEST [SQL error 1062]Duplicate entry '4' for key 'PRIMARY'.
2014-11-05 16:00:37  WARNING OGG-01003  Oracle GoldenGate Delivery for MySQL, rep2my.prm:  Repositioning to rba 1078 in seqno 1.
2014-11-05 16:00:37  ERROR   OGG-01296  Oracle GoldenGate Delivery for MySQL, rep2my.prm:  Error mapping from SENDER.TEST to sender.TEST.
2014-11-05 16:00:37  ERROR   OGG-01668  Oracle GoldenGate Delivery for MySQL, rep2my.prm:  PROCESS ABENDING.

問題分析:
出現該問題一般都是由於同步的源和目標表結構不一致,包括表欄位和索引。
除表結構外,資料的不一致也可能導致mapping 錯誤,如原庫要delete或update時,gg庫找不到該條資料等,具體原因見report中的錯誤號:
原因就這幾個

問題處理:
1).如果是表欄位不一致,需要修改表欄位,異構資料庫還需要重新生成表結構定義檔案,再重啟程式。
2). 如果是索引不一致,需要重建索引,異構資料庫還需要重新生成表結構定義檔案,再重啟程式。(之前沒有關注索引是否一樣,以後關注一下索引)
3). 遇到這種情況,不能先去對比兩端的表結構(可能修改表結構的sql在後面執行),而應該先去查明原因。若是資料問題,可以跳過該表的同步,然後重新同步該表

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/27767315/viewspace-2107383/,如需轉載,請註明出處,否則將追究法律責任。

相關文章