Oracle 11g 日志文件,用于查找过去发生的错误的详细信息 (ORA-00054)



晚在我们的一个计划作业的 TRUNCATE TABLE 语句中发生错误"ORA-00054:资源繁忙并在指定 NOWAIT 的情况下获取"。我需要找出当时哪个进程和 DML 语句持有锁。我知道我们可以检查锁定对象的任何现有会话,但是我们可以从任何 oracle 跟踪文件中找出过去错误的详细信息吗?

理论上,

您可以通过查看 v$active_session_history 来查找可能会在独占模式下锁定表的查询来实现。另一种理论上的方法是查看在服务器的 bdump/udump 目录中生成的跟踪。最好的方法是通过事件设置为下一次做好准备,这将生成跟踪,以防出现此特定错误。

您可能想阅读有关使用 ASH 诊断锁定问题的博客 那里有很好的信息和演示。

最新更新