需求:

请在生产库执行下面的脚本

--删除主键并新增复合主键             
alter table XXXXX  drop constraint PK_USERCHNL cascade;
alter table XXXXX  add constraint PK_USERCHNL primary key (USERCODE, SALECHNL, STR1);
 
目标端ogg异常:
2019-04-03 09:54:38  WARNING OGG-01004  Oracle GoldenGate Delivery for Oracle, rep_1b.prm:  Aborted grouped transaction on 'XXXXX', Database error 1 (OCI Error ORA-00001: unique constraint (PK_USERCHNL) violated (status = 1). INSERT /*+ RESTRICT_ALL_REF_CONS */ INTO "XX"."XXXX" ("USERCODE","SALECHNL","STR1","STR2","STR3","DATE1","DATE2","DATE3") VALUES (:a0,:a1,:a2,:a3,:a4,:a5,:a6,:a7)).
2019-04-03 09:54:38 WARNING OGG-01154 Oracle GoldenGate Delivery for Oracle, rep_1b.prm: SQL error 1 mapping XX.XXXXto LIS.USERCHNL OCI Error ORA-00001: unique constraint (XXX.PK_USERCHNL) violated (status = 1). INSERT /*+ RESTRICT_ALL_REF_CONS */ INTO "XX"."XXXX" ("USERCODE","SALECHNL","STR1","STR2","STR3","DATE1","DATE2","DATE3") VALUES (:a0,:a1,:a2,:a3,:a4,:a5,:a6,:a7).
2019-04-03 09:54:38 ERROR OGG-01296 Oracle GoldenGate Delivery for Oracle, rep_1b.prm: Error mapping from LIS.USERCHNL to XX.XXXXX.
2019-04-03 09:54:38 ERROR OGG-01668 Oracle GoldenGate Delivery for Oracle, rep_1b.prm: PROCESS ABENDING.
2019-04-03 09:57:49 WARNING OGG-00869 Oracle GoldenGate Delivery for Oracle, rep_1b.prm: OCI Error ORA-00001: unique constraint (XX.PK_USERCHNL) violated (status = 1). INSERT /*+ RESTRICT_ALL_REF_CONS */ INTO "XX"."XXXXX" ("USERCODE","SALECHNL","STR1","STR2","STR3","DATE1","DATE2","DATE3") VALUES (:a0,:a1,:a2,:a3,:a4,:a5,:a6,:a7).
2019-04-03 09:57:49 WARNING OGG-01004 Oracle GoldenGate Delivery for Oracle, rep_1b.prm: Aborted grouped transaction on 'XX.XXXX', Database error 1 (OCI Error ORA-00001: unique constraint (XX.PK_USERCHNL) violated (status = 1). INSERT /*+ RESTRICT_ALL_REF_CONS */ INTO "XX"."XXXXX" ("USERCODE","SALECHNL","STR1","STR2","STR3","DATE1","DATE2","DATE3") VALUES (:a0,:a1,:a2,:a3,:a4,:a5,:a6,:a7)).
2019-04-03 09:57:49 WARNING OGG-01154 Oracle GoldenGate Delivery for Oracle, rep_1b.prm: SQL error 1 mapping LIS.USERCHNL to XX.XXXXXX OCI Error ORA-00001: unique constraint (XXX.PK_USERCHNL) violated (status = 1). INSERT /*+ RESTRICT_ALL_REF_CONS */ INTO "XX"."XXXXX" ("USERCODE","SALECHNL","STR1","STR2","STR3","DATE1","DATE2","DATE3") VALUES (:a0,:a1,:a2,:a3,:a4,:a5,:a6,:a7).
2019-04-03 09:57:49 ERROR OGG-01296 Oracle GoldenGate Delivery for Oracle, rep_1b.prm: Error mapping from LIS.USERCHNL to XX.XXXXXX.
2019-04-03 09:57:49 ERROR OGG-01668 Oracle GoldenGate Delivery for Oracle, rep_1b.prm: PROCESS ABENDING.

--对比源端与目标端约束是否一致

select owner, constraint_name, constraint_type, status, validated
from dba_constraints
where owner='FLORACLE' and TABLE_NAME = 'TBL_BRH_KEY_INDEX';

解决方案:

在目标端删除多余的约束

OGG 源端与目标端 约束不一致的更多相关文章

  1. OGG_GoldenGate目标端库级别数据初始化(案例)

    2014-03-07 Created By BaoXinjian

  2. Goldengate升级之目标端(replicat端)升级

    转自红黑联盟Goldengate升级之目标端(replicat端升级 要升级replicat端的原因为:目标端OGG软件版本与源端OGG软件版本不同,在实际生产应用中,经常发现replicat端事务丢 ...

  3. 5.配置globals文件(目标端)

            mgr进程是goldengate软件执行的主进程.是由这个进程控制其它进程的,比方extract,replicat进程等. 对于mgr进程的配置,将会在以下介绍. global文件我们 ...

  4. ogg同步DDL时,源和目标端表空间名称不同的解决思路

    在OGG同步过程中,经常会碰上有创建表或表空间的同步,往往因为源和目标的平台不同,如aix->linux or linux->windows,这两个平台的表空间也经常不同,在目标端执行DD ...

  5. dblink查找对应的目标端session

    v$session试图中process字段代表的是客户端所在机器的进程号 例如我使用toad连接数据库,查询到的process即toad的进程号 SELECT process FROM V$SESSI ...

  6. goledengate重新投递和目标端跳过过事务

    日常在goledengate的维护中,最大的问题莫过于进程ABENDING.在我的维护生涯中,主要的有两个原因,第一个是网络中断造成的造成的文件损坏,一个是大事务(相关操作人员在进行操作的时候事务过大 ...

  7. Netty源码解析---服务端启动

    Netty源码解析---服务端启动 一个简单的服务端代码: public class SimpleServer { public static void main(String[] args) { N ...

  8. pt-archiver归档数据 源库和目标库是否会出现不一致

    背景 归档的表在源库和目标库都要存在 pt-archiver归档表的场景有:不删原表数据,非批量插入目标库:不删原表数据,批量插入目标库:非批量删除原表数据,非批量插入目标库:批量删除原表数据,批量插 ...

  9. zookeeper源码之服务端数据库管理中心

    负责管理ZooKeeper整个数据.主要管理树结构数据.session数据.持久化管理. 类图 ZKDatabase ZooKeeper数据管理门户类,底层通过DataTree来管理树结构,通过Fil ...

随机推荐

  1. Git 克隆远程仓库到本地

    Git 克隆远程仓库到本地 参考 $ git clone --help https://git-scm.com/book/zh/v2/Git-%E5%9F%BA%E7%A1%80-%E8%8E%B7% ...

  2. Django2.2 Vue 前后端分离 无法访问Cookie

    个人验证后可用配置如下: 环境: - Django 2.2 - djangorestframework 3.9 - django-cors-headers 2.5.3 INSTALLED_APPS = ...

  3. linux在目录下查字符串, 查文件数目

    在目录下所有文件中查找某个字符串(递归查) grep -rnl '字符串' 目录名 统计一个文件夹下目录数或文件数, 如下分步讲解: 1. 显示目录下内容: ls -l                ...

  4. [LeetCode] 7. Reverse Integer 翻转整数

    Given a 32-bit signed integer, reverse digits of an integer. Example 1: Input: 123 Output: 321 Examp ...

  5. 忍者钩爪 ( ninja) 题解———2019.10.19

    可以到这里测..嘿嘿嘿 题目: [问题 描述 ] 小 Q 是一名酷爱钩爪的忍者, 最喜欢飞檐走壁的感觉, 有一天小 Q 发现一个练习使用钩 爪的好地方,决定在这里大显身手. 场景的天花板可以被描述为一 ...

  6. c++中char类型的取值范围

    -128~127,数字在计算机中以补码形式存储,因为正数的补码就是其本身且正数符号位置0,故最大值为01111111(一个0七个1)也就是127 而负数是对应正数值取反加一,拿最大的负数-1来说,就是 ...

  7. sql实现excel中模糊替换

    今天遇到项目上需要修改数据库中部分字段 如果一个一个替换的话工作量实在太大,于是找一个办法 update 表名 set 字段名=replace(字段名,'aaaa','cccc') + whereaa ...

  8. 【layui】【laydate】设置可以选择相同的年份范围

    1.效果: 2.解决方法: 修改laydate.js源码 全局查询T.prototype.setBtnStatus这个只有一个,就是点击控件时调用的事件,里面添加下面代码 if( this.confi ...

  9. Unity和Jenkins真是绝配,将打包彻底一键化!

    说起打包,我们的QA简直是要抓狂,这个确实我也很同情他们.项目最开始打包是另一个同事做的,打包步骤是有些繁琐,但是项目上线后,不敢轻易动啊!每次他们打包总要跟我抱怨,国内版本打包步骤要10多步还能忍, ...

  10. 使用docker安装gitlab,两台电脑gitlab库相互迁移

    原文来自合伙呀 https://hehuoya.com/2019/09/30/gitlab-docker/ Docker  for gitlab brew cask install docker do ...