作者:乐橙味_367 | 来源:互联网 | 2017-05-12 15:07
Oracle goldengate的触发器错误 OGG-00869
Goldengate在复制进程replicat报错:
如下日志:
2011-06-24 16:25:21 WARNING OGG-00869 OCI Error ORA-04098: trigger 'T_MLOG_LOG_DTL_SUBMIT_STATE' is invalid and failed re-validation (status = 4098), SQL .
2011-06-24 16:25:21 WARNING OGG-01004 Aborted grouped transaction on 'MLOG_ADM_DAILY_LOG_ORG_DTL', Database error 4098 (ORA-04098: trigger 'T_MLOG_LOG_DTL_SUBMIT_STATE' is invalid and failed re-validation).
2011-06-24 16:25:21 WARNING OGG-01003 Repositioning to rba34721235 inseqno 25.
2011-06-24 16:25:21 WARNING OGG-01003 Repositioning to rba34721235 inseqno 25.
Source Context :
SourceModule : [er.main]
SourceID : [/mnt/ecloud/workspace/Build_OpenSys_r11.1.1.0.15_001_[41784]/perforce/src/app/er/rep.c]
SourceFunction : [take_rep_err_action]
SourceLine : [15809]
2011-06-24 16:25:21 ERROR OGG-01296 Error mapping from MLOG_ADM_DAILY_LOG_ORG_DTL to MLOG_ADM_DAILY_LOG_ORG_DTL.
可以在目标端数据库disable该触发器。
查询需要disable的触发器
执行查询的脚本:
altertriggerUserTest.T_MLOG_LOG_DTL_SUBMIT_STATEdisable;
在源库修改触发器,或传输到目标端的数据库,,并且把目标端的触发器修改成enable。
所在需要在目标端数据库的replicat进程限制触发器:
DDL INCLUDE OBJNAME "UserTest.*", &
EXCLUDE OBJNAME "TRIGGER",&