源端字段修改导致GoldenGate同步出错

前天接到一客户电话,说他们的数据库同步报错了,错误信息如下:

ERROR   OGG-01163  Bad column length (3) specified for column col81 in table XXX.TT, maximum allowable length is 1.

经询问,得知是由于他们系统升级,有好几个表增加并修改了部分字段,但其中一个表同步失败,报上面的错误。

我一开始以为是两边(源端与目标端)数据库的表结构不一致,让他们drop掉目标端的表,重新从源端expdp然后impdp到目标端,但故障依旧。

表TT是一个宽表,在系统升级之前有70多个字段,有主键,并且同步一直是正常的,系统升级之后该表有80多个字段了,除了add了几个字段,

也有字段做了modify。在对replicat进程参数做了一些列修改均无改善,错误依旧。

最后我尝试重建此表:

1)使用表TT的DDL语句新建一个表T1,

2)insert into t1 select * from tt;

3)drop table tt;

4)rename t1 to tt;

5)GGSCI> add trandata xxx.tt

经过上面处理后,故障解决!

客户数据库环境:Oracle 11g RAC,Oracle Goldengate 11.1.1.1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lordcoohoo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值