暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

触发器引发的“惨”案

原创 侯海兵 2020-07-30
1299

背景:两台机器DG环境,原数据库WINDOWS,DG数据库LINUX
数据库版本:11.2.0.4
现象:DG同步好好的,晚上原数据库重启后,DG同步不了,主库开始报错:

Error 1017 received logging on to the standby

Check that the primary and standby are using a password file
and remote_login_passwordfile is set to SHARED or EXCLUSIVE,
and that the SYS password is same in the password files.
returning error ORA-16191

复制

备库日志报:
一个触发器的错误(内容忽略),然后报错:
ORA-00604: error occurred at recursive SQL level 1
然后还有个权限的问题:err ora 04023;

先从触发器入手吧,原库的触发器不能动,只能将备库的触发器禁用掉试试看:
在pfile文件中增加参数_system_trig_enabled=false
然后重启,发现已开始传输日志;

分析:
在DG环境中,主库是通过日志应用的方式将数据传输到备库的。
在传输过程中如果有触发器,备库上也会执行,就会触发DDL、DML等相关操作,这样就会涉及到权限问题,因此日志中报错。

至此问题解决。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论