OCI Error ORA-12096: error in materialized view log on "JTINFO"."TBL_USERID"

前两天进行了一次在线重定义,修改表某字段的长度。业务表,7000W左右的数据量,修改列为复合主键的其中一列,varchar2类型。


Oracle 主备两台,读写分离。使用OGG进行同步。


背景:

在主库进行在线重定义,主库顺利完成,但是在备库报出异常,异常信息如下:

OCI Error ORA-12096: error in materialized view log on "JTINFO"."TBL_USERID"
ORA-12899: value too large for column "JTINFO"."MLOG$_TBL_USERID"."USID_IMEI" (actual: 36, maximum: 32) (status = 12096), SQL <INSERT /*+ APPEND */ INTO "JTINFO"."TBL_USERID" ("USID_UID","USID_IMEI","USID_IMSI","USID_FLAG","USID_ACTIVE") VALUES (:a0,:a1,:a2,:a3,:a4)>
Operation failed at seqno 39201 rba 3725780
Discarding record on action DISCARD on error 12096
Problem replicating JTINFO.TBL_USERID to JTINFO.TBL_USERID
Mapping problem with insert record (target format)...
*
USID_UID = 8087585692
USID_IMEI = 1B200F09-11A1-4C24-A952-65475EBE116D
USID_IMSI = 000000000000000
USID_FLAG = 0
USID_ACTIVE = 1

于是,查找到表MLOG$_TBL_USERID,增加此列长度,然后停止报错,问题解决,网上查看有人说为Oracle BUG,目前还未进行查证。


为什么会多出来一张表MLOG$_TBL_USERID?


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值