gpt4 book ai didi

oracle - 如何找到导致 ORA-00054 的原因?

转载 作者:行者123 更新时间:2023-12-02 11:40:50 24 4
gpt4 key购买 nike

过去一段时间,我注意到在大量并发更新期间,尝试发出 SELECT ... FOR UPDATE NOWAIT 时出现 ORA-00054 错误数据库。这是我们的开发系统,我们确实没有任何其他用户,或者至少我们是这么认为的。

我们已经查看了应用程序的日志,看起来一切正常;没有线程尝试更新同一行。

如何配置 Oracle 数据库来生成日志,以便让我知道发生此错误时持有锁的用户 ID?

最佳答案

从这里:ORA-00054: resource busy and acquire with NOWAIT specified

您还可以查找sql​​、用户名、机器、端口信息并获取持有连接的实际进程

SELECT O.OBJECT_NAME, S.SID, S.SERIAL#, P.SPID, S.PROGRAM,S.USERNAME,
S.MACHINE,S.PORT , S.LOGON_TIME,SQ.SQL_FULLTEXT
FROM V$LOCKED_OBJECT L, DBA_OBJECTS O, V$SESSION S,
V$PROCESS P, V$SQL SQ
WHERE L.OBJECT_ID = O.OBJECT_ID
AND L.SESSION_ID = S.SID AND S.PADDR = P.ADDR
AND S.SQL_ADDRESS = SQ.ADDRESS;

关于oracle - 如何找到导致 ORA-00054 的原因?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10378651/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com