我有一系列脚本在托管 oracle 10g 的 AIX 服务器上作为 nohup 并行运行。这些脚本是由其他人编写的,旨在同时执行。所有脚本都在表上执行更新。我收到错误消息,
ORA-00060: 等待资源时检测到死锁
当我为此搜索时,我发现 http://www.dba-oracle.com/t_deadly_perpetual_embrace_locks.htm
即使脚本同时对同一个表执行更新,它们也会对由WHERE
子句确定的表的不同记录执行更新,并且它们之间没有记录重叠。
那么这会导致错误吗?
无论在表的何处执行更新,都会发生此错误吗?
我是否应该始终避免对表进行并发更新?
PL/SQL successfully completed
奇怪的是,在上面引用的错误之后,我还在 nohup.out 日志上找到了
。
这是否意味着 oracle 已从死锁中恢复并成功完成更新,或者我应该连续重新运行这些脚本吗?欢迎任何帮助。
提前致谢。