【原創】goldengate 目的端rep複製程式 遇到ora-00001 異常終止abend的血案
環境介紹:
goldengate 目的端rep複製程式 遇到ora-00001 異常終止abend的血案
源頭oracle,1個extract程式,該的程式引數檔案配置的是user.*
源頭oracle,2個進datapump程式(這是往2個不同目的端上的dp程式),第一個dp程式的引數檔案配user.*
第二個程式(以下簡稱dpww程式)的引數檔案配置的是
user.a;
user.b;
user.c;
user.d;
,也就是說,dpww程式是完成了部分表傳輸到目的地的trail檔案中。
目的端repww程式abended,看discard檔案,如下所示:
Current time: 2012-01-07 09:10:58
Discarded record from action ABEND on error 1
OCI Error ORA-00001: unique constraint (CIMS.PK_GT_JYZ_ZS) violated (status = 1), SQL
Aborting transaction on /u02/ggs/dirdat/ww beginning at seqno 0 rba 111386
error at seqno 0 rba 114763
Problem replicating CIMS.GT_JYZ_ZS to CIMS.GT_JYZ_ZS
Mapping problem with insert record (target format)...
違反唯一約束,第一反應肯定是目的端此表中存在相同的記錄,去目的端查詢此表,where條件是報錯中的列和列值,查詢結果是空記錄。
邪門了。。
於是提交sr,一級sr,老外接手處理,下班了,澳大利亞的華人接手處理,折騰一圈,沒搞定。
於是n天過去了。
於是我又重新部署goldengate,部署完畢後,業務啟動,repww程式還是報錯,報錯提示跟以上錯誤一樣。
logdump工具上陣:
logdump> open ./dirdat/ww000000
logdump> ghdr on
logdump> detail on
logdump> detail data
logdump> pos 111386
logdump> n
發現如下資訊:
2012/01/07 08:59:29.337.624 Insert Len 360 RBA 114310
Name: CIMS.GT_JYZ_ZS
After Image: Partition 4 G m
0000 0013 0000 000f 3337 3032 3834 3630 3036 3635 | ........370284600665
3934 3000 0100 0a00 0000 06b3 c2c8 f0b2 d300 0200 | 940.................
1500 0031 3937 362d 3038 2d31 373a 3038 3a34 333a | ...1976-08-17:08:43:
3039 0003 0003 0000 3100 0400 0400 0030 3100 0500 | 09......1......01...
0f00 0000 0b31 3339 3634 3231 3039 3837 0006 0004 | .....13964210987....
ffff 0000 0007 0003 0000 3100 0800 04ff ff00 0000 | ..........1.........
0900 0400 0031 2000 0a00 1600 0000 1233 3730 3230 | .....1 ........37020
2012/01/07 08:59:29.337.624 Insert Len 360 RBA 114763
Name: CIMS.GT_JYZ_ZS
After Image: Partition 4 G m
0000 0013 0000 000f 3337 3032 3834 3630 3036 3635 | ........370284600665
3934 3000 0100 0a00 0000 06b3 c2c8 f0b2 d300 0200 | 940.................
1500 0031 3937 362d 3038 2d31 373a 3038 3a34 333a | ...1976-08-17:08:43:
3039 0003 0003 0000 3100 0400 0400 0030 3100 0500 | 09......1......01...
0f00 0000 0b31 3339 3634 3231 3039 3837 0006 0004 | .....13964210987....
ffff 0000 0007 0003 0000 3100 0800 04ff ff00 0000 | ..........1.........
0900 0400 0031 2000 0a00 1600 0000 1233 3730 3230 | .....1 ........37020
注意,以上兩段只是rba不同,一個是RBA 114310 另一個是 RBA 114763,都是往同一個表中的insert into操作。
看到這裡,我感覺到納悶,怎麼可能在目的端trail檔案寫2遍相同的操作呢?
莫非是dpww程式的引數檔案把GT_JYZ_ZS這個表多配置了一次?
於是開啟源端的dpww程式的引數檔案,搜了一下,果然,CIMS.GT_JYZ_ZS出現了2次。
那麼還有沒有可能其他的表名出現了重複(一共138張表)?
於是,裝上pb,在我自己的資料庫中建了個table,將這138張表用excel另存為"製表符分割的txt"檔案,
用pb的row-import選單,將這138個表名匯入了表中,
使用sql查詢:
select tablename,count(*) from xxxx group by tablename having count(*)>1
結果只反饋這一行:GT_JYZ_ZS
於是確認,只有這一行有問題。刪除掉重複的一行GT_JYZ_ZS,重啟dpww程式即可。
[@more@]
goldengate 目的端rep複製程式 遇到ora-00001 異常終止abend的血案
源頭oracle,1個extract程式,該的程式引數檔案配置的是user.*
源頭oracle,2個進datapump程式(這是往2個不同目的端上的dp程式),第一個dp程式的引數檔案配user.*
第二個程式(以下簡稱dpww程式)的引數檔案配置的是
user.a;
user.b;
user.c;
user.d;
,也就是說,dpww程式是完成了部分表傳輸到目的地的trail檔案中。
目的端repww程式abended,看discard檔案,如下所示:
Current time: 2012-01-07 09:10:58
Discarded record from action ABEND on error 1
OCI Error ORA-00001: unique constraint (CIMS.PK_GT_JYZ_ZS) violated (status = 1), SQL
Aborting transaction on /u02/ggs/dirdat/ww beginning at seqno 0 rba 111386
error at seqno 0 rba 114763
Problem replicating CIMS.GT_JYZ_ZS to CIMS.GT_JYZ_ZS
Mapping problem with insert record (target format)...
違反唯一約束,第一反應肯定是目的端此表中存在相同的記錄,去目的端查詢此表,where條件是報錯中的列和列值,查詢結果是空記錄。
邪門了。。
於是提交sr,一級sr,老外接手處理,下班了,澳大利亞的華人接手處理,折騰一圈,沒搞定。
於是n天過去了。
於是我又重新部署goldengate,部署完畢後,業務啟動,repww程式還是報錯,報錯提示跟以上錯誤一樣。
logdump工具上陣:
logdump> open ./dirdat/ww000000
logdump> ghdr on
logdump> detail on
logdump> detail data
logdump> pos 111386
logdump> n
發現如下資訊:
2012/01/07 08:59:29.337.624 Insert Len 360 RBA 114310
Name: CIMS.GT_JYZ_ZS
After Image: Partition 4 G m
0000 0013 0000 000f 3337 3032 3834 3630 3036 3635 | ........370284600665
3934 3000 0100 0a00 0000 06b3 c2c8 f0b2 d300 0200 | 940.................
1500 0031 3937 362d 3038 2d31 373a 3038 3a34 333a | ...1976-08-17:08:43:
3039 0003 0003 0000 3100 0400 0400 0030 3100 0500 | 09......1......01...
0f00 0000 0b31 3339 3634 3231 3039 3837 0006 0004 | .....13964210987....
ffff 0000 0007 0003 0000 3100 0800 04ff ff00 0000 | ..........1.........
0900 0400 0031 2000 0a00 1600 0000 1233 3730 3230 | .....1 ........37020
2012/01/07 08:59:29.337.624 Insert Len 360 RBA 114763
Name: CIMS.GT_JYZ_ZS
After Image: Partition 4 G m
0000 0013 0000 000f 3337 3032 3834 3630 3036 3635 | ........370284600665
3934 3000 0100 0a00 0000 06b3 c2c8 f0b2 d300 0200 | 940.................
1500 0031 3937 362d 3038 2d31 373a 3038 3a34 333a | ...1976-08-17:08:43:
3039 0003 0003 0000 3100 0400 0400 0030 3100 0500 | 09......1......01...
0f00 0000 0b31 3339 3634 3231 3039 3837 0006 0004 | .....13964210987....
ffff 0000 0007 0003 0000 3100 0800 04ff ff00 0000 | ..........1.........
0900 0400 0031 2000 0a00 1600 0000 1233 3730 3230 | .....1 ........37020
注意,以上兩段只是rba不同,一個是RBA 114310 另一個是 RBA 114763,都是往同一個表中的insert into操作。
看到這裡,我感覺到納悶,怎麼可能在目的端trail檔案寫2遍相同的操作呢?
莫非是dpww程式的引數檔案把GT_JYZ_ZS這個表多配置了一次?
於是開啟源端的dpww程式的引數檔案,搜了一下,果然,CIMS.GT_JYZ_ZS出現了2次。
那麼還有沒有可能其他的表名出現了重複(一共138張表)?
於是,裝上pb,在我自己的資料庫中建了個table,將這138張表用excel另存為"製表符分割的txt"檔案,
用pb的row-import選單,將這138個表名匯入了表中,
使用sql查詢:
select tablename,count(*) from xxxx group by tablename having count(*)>1
結果只反饋這一行:GT_JYZ_ZS
於是確認,只有這一行有問題。刪除掉重複的一行GT_JYZ_ZS,重啟dpww程式即可。
[@more@]
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/161195/viewspace-1057064/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- goldengate rep程式abend 遇到 discard file (./dirrpt/rini.dsc) exceeded max bytes (705032704)Go
- 應用補丁升級引起的Goldengate的replicate程式異常終止Go
- online rebulid index異常終止遇到ora-08104Index
- goldengate 配置源頭 scott.* 到目的端scott2.*時,只是在目的端rep程式引數檔案中指定即可Go
- 【原創】一對雙引號引發的goldengate血案Go
- GoldenGate在異構環境下的複製Go
- ADG 例項異常終止故障分析報告
- GoldenGate異種資料庫之間的複製Go資料庫
- goldengate 目的端程式引數APPLYNOOPUPDATES 和ALLOWNOOPUPDATESGoAPPOOP
- goldengate 目的端replicat程式 執行緩慢的問題Go
- GoldenGate的複製原理Go
- 11.2.0.3 MRP程式異常終止 ORA-00600 krr_assemble_cv_3
- 一場 Kafka CRC 異常引發的血案Kafka
- 終止指定埠的程式
- goldengate 刪除複製程式步驟Go
- GoldenGate常見異常處理Go
- 華為無線AP終端異常掉線
- oracle goldengate 複製端延時應用引數OracleGo
- python3.4學習筆記(二) 型別判斷,異常處理,終止程式Python筆記型別
- 【RAC】處理因ASM例項異常導致RAC第一節點例項異常終止故障ASM
- Windows 程式的建立和終止Windows
- 配置GoldenGate捕獲Replicat端資料應用異常Go
- weblogic 10.3.3 java.lang.IllegalArgumentException異常終止服務故障WebJavaException
- goldengate配置DDL複製Go
- 資料複製_GoldenGateGo
- GoldenGate單向複製配置(支援DDL複製)Go
- goldengate單向複製的配置Go
- 記一次故障排查(vnc日誌檔案過大導致crsd程式異常終止)VNC
- 【Mysql】Mysql GTID複製程式出現異常,出現斷點MySql斷點
- WLS 10.3.0 更新發布應用異常終止處理一例
- goldengate基於表複製Go
- GoldenGate多對一複製Go
- goldengate 單向複製配置Go
- GoldenGate的簡介與複製原理Go
- Goldengate複製程式錯誤Fatal error executing DDLGoError
- goldengate 程式(捕捉,傳輸,複製)的狀態檢查命令Go
- 終止程式的工具 kill 、killall、pkill、xkill
- MySQL案例-並行複製亂序提交引起的同步異常MySql並行