在 gv$sql 中查询

Query in gv$sql

我无法理解为什么会这样。

我可以在 gv$sql 中看到一个查询,它的执行次数正在增加。连logIO也在增加

我无法在 gV$SESSION 中看到相同的 sqlid。在这种情况下这是可能的。

如果执行次数在增加,那么它正在完成执行。当您查询 gv$session 时,它很可能在两次执行之间。除非它在一个紧密的循环中执行,否则人们会期望执行它的会话也做其他事情。您可以查看 gv$sqlusers_executing 列以对此有所了解。

或者,查询有一些递归细节,当你检查时,这些细节正在执行。

如果您想查看哪些会话负责 运行 哪些查询,那么您可以检查 gv$open_cursor 或者您可以检查已添加到 gv$sql 行的检测详细信息- service,module,action(并且 parsing_schema_name 在某些设置中可能很重要)。