我正在尝试使用oracle更改通知(来自Dbms_Change_Notification包的API)来更新复杂的物化视图。我使用我的PL / SQL回调为我的表安装更改通知,我可以在USER_CHANGE_NOTIFICATION_REGS视图中看到我的更改通知已正确安装。在开发中,具有低负载变化通知的oracle服务器在提交到观察表之后立即调用。但是在高负载的真实服务器上,似乎永远不会调用更改通知。
有没有办法解决为什么不调用更改通知,何时调用它们,调用它们时会发生什么样的错误等等?
P.S。我使用的是oracle版本10.2.0.3.0
答案 0 :(得分:0)
在您的生产系统上,您是否设置了JOB_QUEUE_PROCESSES初始化参数?必须将其设置为非零值。
注册查询的用户是否已在生产数据库上获得了正确的权限(更改通知并在DBMS_CHANGE_NOTIFICATION上执行)?