gpt4 book ai didi

oracle - 故障排除 ora-29471

转载 作者:行者123 更新时间:2023-12-02 20:11:05 30 4
gpt4 key购买 nike

某些 session 会导致 ORA-29471,因为 dbms_sql 对于这些 session 无法操作。我们在应用程序中遇到了这个错误,因为记录很少。

如何解决这个问题?我们如何才能识别特定 session 对 DBMS_SQL 没有访问权限?我们在 session 级别有任何属性/标志吗?

下面的链接提供了一种在本地重现此问题的方法。 Reproduce

最佳答案

错误发生在运行时。在事情发生之前你可能无法猜测它会发生。也许您的解决方案是使用单个 block 检查您要打开的游标 ID dbms_sql.is_open(c_id)

但是,如果这就是您要查找的内容,请按以下步骤查找打开的游标列表:

select a.value, s.username, s.sid, s.serial#
from v$sesstat a, v$statname b, v$session s
where a.statistic# = b.statistic# and s.sid=a.sid
and b.name = 'opened cursors current'
;

您还可以访问v$open_cursor来对它们进行计数:

SELECT *
FROM v$open_cursor oc, v$session s
WHERE oc.sid = s.sid
order by 3,2;

希望这可以帮助您调整一些内容以检查是否使用了预期的光标。

关于oracle - 故障排除 ora-29471,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49525407/

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