如何知道数据库连接数

Iwa*_*ria 5 oracle oracle11g

请注意,即使它看起来非常相似,它也不是与此链接重复的问题: 如何在 Oracle 中列出活动/打开的连接?

我问的不是会话数,而是连接数。我知道我可以查询 v$session 视图,但我不知道那里使用了多少连接。如果有一种方法可以从中推导出来,请赐教。

编辑:我在询问与数据库的物理数据库连接。

Rah*_*hul 5

对你的说法有点困惑I'm not asking about the number of sessions, but connections

从概念上讲,两者是相同的。每个活动会话都对应于数据库的底层活动连接。

现在,如果您想知道允许的最大连接限制,那么文档会说

实例中所有数据库的最大连接数(系统和应用程序)= 2048

要了解配置到数据库的允许会话,您可以查询v$parameter视图,例如

SELECT name, value 
  FROM v$parameter
 WHERE name = 'sessions'
Run Code Online (Sandbox Code Playgroud)

如果您想知道Active任何实例的会话超出配置为允许的总数,那么您可以使用以下列查询v$session视图Status

SELECT COUNT(*)
  FROM v$session
WHERE STATUS = 'ACTIVE'
Run Code Online (Sandbox Code Playgroud)

您可能需要参考这篇文章如何检查 Oracle 数据库允许的最大连接数?

  • 如果我错了,请纠正我。我的理解是一个连接可能包含多个会话。这就是为什么我在这里假设 v$session 视图中的记录数并不是描述连接数的准确数字。 (2认同)