今天,一客户反馈其DB为12.2.0.1,OGG版本为19.1.0.0的数据出现同步异常,就是有部分表出现源端与目标端的数据不一致的现象。观察OGG的discard文件有Mapping problem with compressed update record 提示。 一、问题现象 DB为12.2.0.1,OGG版本为19.1.0.0的数据出现同步异常,就是有部分表出现源端与目标端的数据不一致的现象。 二、问题分析 查询oracle mos官网,根据Doc ID 2072869.1和Doc ID 1585474.1提示,出现Mapping problem with compressed update record提示,引起OGG数据同步不一致的原因,可能有五种;一种是表是压缩表,一种是表上可能没有主键,一种是表上有加密列,另外一种是表上没有trandata支持,最后一种可能是OGG的BUG 21090428。 1.问题表压缩属性排查 经核实,数据出现同步异常的表均有主键: --排除表为压缩表 select owner,table_name,compression,status from dba_tables where table_name in('INTFRCT','INTFRCP','INTFRCR'); OWNER TABLE_NAME COMPRESS STATUS --------------- ------------------------ -------- -------- EMS INTFRCP DISABLED VALID EMS INTFRCQ DISABLED VALID EMS INTFRCT DISABLED VALID 2.排除表上无主键 3.表上加密列排查 select DBMS_METADATA.GET_DDL('TABLE','INTFRCQ','EMS') FROM DUAL; 经核实表的DDL创建语句,没有发现加密列设置。 4.表的trandata属性排查 经查看涉及的三张数据同步异常的表的trandata属性为disabled。 5.OGG的BUG oracle mos 官网文档Doc ID 2072869.1提示可能是ogg的一个bug 21090428。 小结:可能是表的trandata缺失导致Update语句执行,备库重放缺失部分字段的数据;也可能是ogg的bug 21090428。 三、问题处理 目前,客户计划重新初始化数据同步异常的三张表,先对表添加trandata,再使用数据泵做数据全量初始化。 四、总结 经排查,由update引起的ogg数据同步异常并伴有 Mapping problem with compressed update record 提示,可能是表的trandata缺失导致Update语句执行,备库重放缺失部分字段的数据;也可能是ogg的bug 21090428。目前,客户计划重新初始化异常的三张表,进一步验证是否trandata因素引起的异常。
易搜网络技术公司 » ORACLE OGG数据同步异常之Mapping problem with compressed update record