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