备库重新编译导致的ora-16000 :database open for read-only access

    今天,一个开发来找我,说是备库的一个用户执行存储过程报错(我们的备库是ora11.2.0.3的active standby)。错误信息如下:

    ora-00604:error occurred  at recursive SQL level 1

    ora-16000 :database open for read-only access

    看到这个错误,作为一个ora菜鸟,第一感觉以为是该存储过程有更改数据的操作,而备库是只读的。随后,查看了该存储过程,然而发现该存储过程涉及到的全部都是select语句。这时开发告诉我,应用连接的用户是b,而存储过程是a的,并且在周四的时候b用户执行是没有问题的,在周五执行的时候就楚翔了上述问题,在核对了权限问题后,依然没有解决问题。

    后来,登陆到主库,突然间发现存储过程是无效的,问开发,原来是周四晚上,更改了该存储过程导致其无效。在备库上执行的时候,需要重新编译,而备库是只读的,无法重新编译,导致出现了以上的错误。ora菜鸟---伤不起啊!~~~~


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值