GoldenGate 1403错误解决方法
OGG oracle goldengate 1403错误解决方法
1. 错误描述
WARNING OGG-01154 Oracle GoldenGate Delivery for Oracle, repyxb.prm: SQL error 1403 mapping SGPM.P_SMS_SEND to SGPM.P_SMS_SEND.
WARNING OGG-01003 Oracle GoldenGate Delivery for Oracle, repyxb.prm:  Repositioning to rba 2509817 in seqno 1.
ERROR OGG-01296 Oracle GoldenGate Delivery for Oracle, repyxb.prm:  Error mapping from SGPM.P_SMS_SEND to SGPM.P_SMS_SEND.
ERROR OGG-01668 Oracle GoldenGate Delivery for Oracle, repyxb.prm:  PROCESS ABENDING.
2. 错误原因和分析
SQL ERROR 1403属数据错误,指记录无法投递到目标数据库,需通过查看错误信息及discarded文件,到两端库寻找相应记录,并结合logdump工具分析队列中的实际数据,分析出现该错误的原因,进而解决该问题。
造成该错误的可能原因:
两端表结构不一致
附加日志错误
初始化方法错误导致不一致
目标端级联删除、trigger没有被禁止
该表存在不写日志的DML操作
3. 处理方法
3.1 两端表结构不一致
重新初始化该表
3.2 附加日志错误
在源端确认该表附加日志是否为enable状态,执行命令:
GGSCI>INFO TRANDATA schema.table_name
如果不是,重新添加附加日志,执行命令
GGSCI>ADD TRANDATA schema.table_name
加完附加日志后需要重新对该表执行初始化,具体方法请参照运维方案。
3.3 初始化方法错误导致数据不一致
GG在执行删改操作时,由于初始化方法错误造成的数据不一致,使得GG删除的记录不存在,或修改的数据前影像不一致。此时,可通过logdump观察具体错误,如果记录条数不多,则可手动修复该错误。如果记录数非常多,则需对该表进行重新初始化或在replicat进程中添加handlecollisions参数(加handlecollisions参数的前提为该replicat进程复制的表均有主键或唯一约束)。
3.4 目标端级联删除、trigger没有被禁止
删除目标端trigger及主外键约束即可。
禁止trigger:
禁止主外键约束:
3.5 该表存在不写日志的DML操作
当表处于logging状态且使用了以下数据装载模式+nologging时DML将不会被写入数据库日志,OGG无法捕获到:
? /*+ APPEND */ hint 
? /*+ BUFFER */ hint
? /*+ PARALLEL */ hint
? SQLLDR with DIRECT=TRUE
请首先检查表是否处于logging mode,然后从应用方面检查是否存在这些限制。如果有需要调整表为logging模式,对表执行重新初始化,具体方法请参照运维方案。
3.6 定时任务
观察数据库是否存在定时任务自动修改数据。
同样,对于操作系统级也进行检查,是否有脚本自动修改数据库中数据。
如有以上现象,请禁止这些任务,对已经受影响的表执行初始化。
3.7 数据初始化带来的不一致
如果数据初始化时候没有使用SCN号做恢复和启动OGG进程,则可能会丢失部分数据,在日后的运行过程中报告1403错误。
3.8 人为修改OGG进程检查点带来的数据不一致
如果使用了alter extract/replicat等操作修改过OGG的检查点,则可能会出现丢失数据或者部分时段数据重复现象,造成运行期间报告1403错误。
3.9 人为修改目标端数据
人为失误修改目标数据也会造成两端数据不一致。
GoldenGate 1403错误解决方法的更多相关文章
- SQL SERVER 9003错误解决方法 只适用于SQL2000
		
SQLSERVER 9003错误解决方法 只适用于SQL2000 (只适用于SQL2000) "无法打开新数据库 'POS'.CREATE DATABASE 中止. (Microsoft S ...
 - New XAMPP security concept:错误解决方法
		
New XAMPP security concept:错误解决方法 (2014-03-06 16:07:46) 转载▼ 分类: php 在Linux上配置xampp后远程访问域名报错: New X ...
 - hadoop本地库与系统版本不一致引起的错误解决方法
		
hadoop本地库与系统版本不一致引起的错误解决方法 部署hadoop的集群环境为 操作系统 centos 5.8 hadoop版本为cloudera hadoop-0.20.2-cdh3u3 集 ...
 - mysql Access denied for user root@localhost错误解决方法总结(转)
		
mysql Access denied for user root@localhost错误解决方法总结(转) mysql Access denied for user \'root\'@\'local ...
 - Eclipse 出现Some sites could not be found. See the error log for more detail.错误 解决方法
		
Eclipse 出现Some sites could not be found. See the error log for more detail.错误 解决方法 Some sites could ...
 - eWebeditor编辑器上传图片路径错误解决方法[疑难杂症]【转,作者:unvs】
		
做了一个多版本的网站,后台用的编辑器是eWebeditor,NET版,后面发现上传图片或者文件之后,路径错误无法显示,必须手工修改才行.. 为了更清楚的说明问题,我下面会说的比较详细,首先是网站文件框 ...
 - 网站启动SSL, http变为https后,session验证码错误解决方法
		
网站启动SSL, http变为https后,session验证码错误解决方法 最近公司需要后台启动安全证书,证书安装完毕后,后台老提示 验证码错误,经过几天的研究,此问题已经得到有效解决,现把方法 ...
 - Oracle OCI-22053:溢出错误解决方法
		
原文 Oracle OCI-22053:溢出错误解决方法 Oracle 数值数据类型最多可存储 38 个字节的精度.当将 Oracle 数值转换为公共语言运行库数据类型时,小数点后边的位数可能过多,这 ...
 - Nginx出现“413 Request Entity Too Large”错误解决方法
		
Nginx出现“413 Request Entity Too Large”错误解决方法 2011-03-25 13:49:55| 分类: 默认分类 | 标签:413 request entit ...
 
随机推荐
- iOS UI08_UITableView
			
(http://img.blog.csdn.net/20150808103801391) // // MainViewController.m // UI08_UITableView // // Cr ...
 - 乔治·霍兹(George Hotz):特斯拉、谷歌最可怕的对手!
			
17岁破解iPhone,21岁攻陷索尼PS3:现在,他是埃隆·马斯克最可怕的对手. 黑客往事 许多年后,当乔治·霍兹(George Hotz)回首往事,一定会把2007年作为自己传奇人生的起点 ...
 - vue keep-alive保存路由状态2  (高级用法,接上篇)
			
接上篇 https://www.cnblogs.com/wangmaoling/p/9803960.html 本文很长,请耐心看完分析. 4.高级用法,指定从什么组件进入才缓存,以及销毁缓存:先介绍我 ...
 - CSS3的常用属性(一)
			
选择器 属性选择器(通过标签属性来选择) E[attr]: 表示只要元素<E>存在属性attr就能被选中 如: div[class] E[attr=val]: 表示元素<E> ...
 - js&jQ判断checkbox表单是否被选中
			
js判断: if(document.getElementById("checkboxID").checked){ alert("checkbox is checked&q ...
 - Centos 7 修改 ssh 端口
			
1.修改 ssh 配置 vi /etc/ssh/ssh_config vi /etc/ssh/sshd_config ///以上这2个文件,都去掉#port22前"#",将22改为 ...
 - ueditor 编辑器,自定义图片上传
			
<div> <h1>完整demo</h1> <form method="post" name="form"> & ...
 - Django之ORM的增删改查
			
一.添加表记录 对于单表有两种方式 # 添加数据的两种方式 # 方式一:实例化对象就是一条表记录 Frank_obj = models.Student(name ="海东",cou ...
 - 洛谷 P2183 巧克力
			
P2183 巧克力 题目描述 佳佳邀请了M个同学到家里玩.为了招待客人,她需要将巧克力分给她的好朋友们.她有N(1<=N<=5000)块巧克力,但是大小各不一样,第i块巧克力大小为为1*X ...
 - Linux shell 内部变量
			
1 TMOUT 来自bash的解释: If set to a value greater than zero, TMOUT is treated as the default timeout for ...