如何找出oracle本地会话
How to find out oracle local sessions
是否有任何方法可以从 Oracle 中的本地计算机中找出会话?
我发现V11.2.0的v$session中有一个'PORT'字段,当我们在本机上用sqlplus访问oracle 11.2.0时,端口字段为0 ,相反,当我们使用 sql 开发人员从远程计算机访问 oracle 11.2.0 时,PORT 字段是远程 tcp 端口。
因此我们可以通过 PORT 字段识别本地会话,除了通过 tcp 与 127.0.0.1 的本地连接。
但是还有一个问题就是oracle 11.2.0之前的版本没有v$session.PORT这一列
谢谢
使用 MACHINE、TERMINAL 和 PROGRAM 列。
MACHINE 将匹配本地主机的名称。
TERMINAL 类似于 pts/1 或 Windows 机器名称。
PROGRAM 类似于 sqlplus@(TNS V1-V3)<--这很重要,因为您还会看到各种内部内容,例如 (J001)(W001) 等。您可以使用 WHERE USERNAME IS NOT NULL 以消除这些,除非您希望列出所有本地连接。
希望这是一个好的开始。
是否有任何方法可以从 Oracle 中的本地计算机中找出会话?
我发现V11.2.0的v$session中有一个'PORT'字段,当我们在本机上用sqlplus访问oracle 11.2.0时,端口字段为0 ,相反,当我们使用 sql 开发人员从远程计算机访问 oracle 11.2.0 时,PORT 字段是远程 tcp 端口。
因此我们可以通过 PORT 字段识别本地会话,除了通过 tcp 与 127.0.0.1 的本地连接。
但是还有一个问题就是oracle 11.2.0之前的版本没有v$session.PORT这一列
谢谢
使用 MACHINE、TERMINAL 和 PROGRAM 列。
MACHINE 将匹配本地主机的名称。
TERMINAL 类似于 pts/1 或 Windows 机器名称。
PROGRAM 类似于 sqlplus@(TNS V1-V3)<--这很重要,因为您还会看到各种内部内容,例如 (J001)(W001) 等。您可以使用 WHERE USERNAME IS NOT NULL 以消除这些,除非您希望列出所有本地连接。
希望这是一个好的开始。