故障描述:

(1).复制进程 Abended,通过view report语句查看可发现类似如下的报错:
2017-10-23 15:01:43 ERROR OGG-01296 Error mapping from CMS_ADM.T3010 to CMS_ADM.T3010.
(2).查看丢弃文件(Discard File)的内容类似如下:
Oracle GoldenGate Delivery for Oracle process started, group RAOC discard file opened: 2017-10-23 15:28:08.467831
Key column PK_ID (0) is missing from delete on table CMS_ADM.T3010
Missing 1 key columns in delete for table CMS_ADM.T3010.
Current time: 2017-10-23 15:28:18
Discarded record from action ABEND on error 0
Aborting transaction on ./dirdat/ao beginning at seqno 17674 rba 29602113
error at seqno 17674 rba 29602113
Problem replicating CMS_ADM.T3010 to CMS_ADM.T3010
Mapping problem with delete record (target format)...
*
P_CODE = 01206135
000000: 30 31 32 30 36 31 33 35 01206135
 
AIRCRAFT_TYPE = 737GY
000000: 37 33 37 47 59 737GY
 
TECH_NO = Z030
000000: 5a 30 33 30 Z030
 
START_DATE = 2017-10-19 00:00:00
000000: 32 30 31 37 2d 31 30 2d 31 39 20 30 30 3a 30 30 2017-10-19 00:00
000010: 3a 30 30 :00
(3).源端查看同步表的 TRANDATA,发现记录字段为 P_CODE、AIRCRAFT_TYPE、TECH_NO、START_DATE。同时,表不久前更换主键为 PK_ID。
 
故障原因:
同步表更换主键列后,复制进程采用新主键(PK_ID)作为唯一标示,而源端投递过来的 trail 文件仍使用原来的主键(P_CODE、AIRCRAFT_TYPE、TECH_NO、START_DATE)作为唯一标示。因此当执行删除语句时,由于需要靠唯一标示定位数据,因此复制进程报错。
 
故障处理方式:
1.重新同步
注意:此方式整改彻底,可以避免原主键有朝一日失去唯一性的情况方式。
(1).对更换主键的表重新添加 TRANDATA,确保作为唯一标示的记录字段为更新后的主键。
(2).重新同步该表。
2.临时处理
(1).修改目标端复制进程参数,使原有同步参数变为如下。
MAP CMS_ADM.T3010, TARGET CMS_ADM.T3010, KEYCOLS(P_CODE, AIRCRAFT_TYPE, TECH_NO, START_DATE);
(2).重启复制进程。
 

li {list-style-type:decimal;}ol.wiz-list-level2 > li {list-style-type:lower-latin;}ol.wiz-list-level3 > li {list-style-type:lower-roman;}blockquote {padding:0 12px;padding:0 0.75rem;}blockquote > :first-child {margin-top:0;}blockquote > :last-child {margin-bottom:0;}img {border:0;max-width:100%;height:auto !important;margin:2px 0;}table {border-collapse:collapse;border:1px solid #bbbbbb;}td, th {padding:4px 8px;border-collapse:collapse;border:1px solid #bbbbbb;min-height:28px;word-break:break-all;box-sizing: border-box;}.wiz-hide {display:none !important;}
-->

最新文章

  1. LeetCode:Unique Paths I II
  2. FastDFS总结
  3. 利用mysql中的SQL_CALC_FOUND_ROWS 来实现group by后的记录数统计
  4. php 自定义求数组差集,效率比自带的array_diff函数还要快(转)
  5. Highcharts接收后台传来的json对象值无法显示
  6. Unity3d 游戏汉化之IL注入文本替换--木石世纪
  7. QSQL导出mapfile和mapfile中PostGIS连接的一点心得
  8. Angular.js之Router学习笔记
  9. 【ODI】| 数据ETL:从零开始使用Oracle ODI完成数据集成(三)
  10. KMP Algorithm 字符串匹配算法KMP小结
  11. 阿里云盾SSL证书即将到期怎么办?
  12. P3398 仓鼠找sugar (一道LCA的裸题)
  13. gitlab使用--汉化及修改端口
  14. linux --- 6. 项目部署
  15. 启动欢迎页面时,Android Studio设置全屏Activity
  16. [ci]jenkins-slave-ssh docker容器化-自动注入key
  17. springboot Thymeleaf 整合
  18. h5 定位
  19. Android getprop setprop watchprops用法
  20. java基础13 接口(及关键字:interface、implements)

热门文章

  1. PHp连接数据库实现增删改查
  2. JavaEE成长之路
  3. 03_Ext_Viewport_Window_Dialog
  4. vue+element搭建的后台管理系统
  5. Zabbix 添加脚本检测IP变化
  6. Tensorflow之卷积神经网络(CNN)
  7. zookeeper环境搭建及使用
  8. 通过SQL脚本导入数据到不同数据库避免重复导入三种方式
  9. Java环境配置小记
  10. 使用svn控制系统的优缺点和注意事项