故障現象:
2011-09-06 15:45:29 WARNING OGG-01004 Oracle GoldenGate Delivery for Oracle, rora_001.prm: Aborted grouped transaction on 'REALESTATE.JZWFCMS', Database error 1403 ().
2011-09-06 15:45:29 WARNING OGG-01003 Oracle GoldenGate Delivery for Oracle, rora_001.prm: Repositioning to rba 8825466 in seqno 34.
2011-09-06 15:45:29 WARNING OGG-01154 Oracle GoldenGate Delivery for Oracle, rora_001.prm: SQL error 1403 mapping REALESTATE.JZWFCMS to REALESTATE.JZWFCMS.
2011-09-06 15:45:29 WARNING OGG-01003 Oracle GoldenGate Delivery for Oracle, rora_001.prm: Repositioning to rba 9293635 in seqno 34.
2011-09-06 15:45:29 ERROR OGG-01296 Oracle GoldenGate Delivery for Oracle, rora_001.prm: Error mapping from REALESTATE.JZWFCMS to REALESTATE.JZWFCMS.
2011-09-06 15:45:29 ERROR OGG-01668 Oracle GoldenGate Delivery for Oracle, rora_001.prm: PROCESS ABENDING.
問題分析:
出現該問題一般都是由於同步的源和目標表結構不一致,包括表欄位和索引。
除表結構外,資料的不一致也可能導致mapping 錯誤,如原庫要delete或update時,gg庫找不到該條資料等,具體原因見report中的錯誤號碼:
Database error 1403
oerr ora 1403
01403, 00000, "no data found"
// *Cause:
// *Action:
問題處理:
1).如果是表欄位不一致,需要修改表欄位,異構資料庫還需要重建表結構定義檔案,再重啟進程。
2). 如果是索引不一致,需要重建索引,異構資料庫還需要重建表結構定義檔案,再重啟進程。(之前沒有關注索引是否一樣,以後關注一下索引)
3). 遇到這種情況,不能先去對比兩端的表結構(可能修改表結構的sql在後面執行),而應該先去查明原因。若是資料問題,可以跳過該表的同步,然後重新同步該表。