我如何知道我连接到我的 Oracle RAC 的哪个节点?

Ste*_*han 6 testing oracle-11g failovercluster oracle-rac

是否有一种简单的方法可以确定我连接到 Oracle 11g R2 系统的哪个 RAC 节点?我正在尝试执行一些故障转移测试,我想确保我的应用程序正确连接到一个节点,并且在此节点关闭后,节点可以顺利过渡到另一个节点,前端没有任何明显的延迟。也许值得一提的是我们利用了TAF。

我曾考虑为此使用企业管理器,但我想当我连接到一个运行 em 的节点并且该节点出现故障时,我真的没有机会监控节点的连接状态。

小智 7

对于当前会话:

SELECT sys_context('USERENV', 'INSTANCE') AS instance#,
       sys_context('USERENV', 'INSTANCE_NAME') AS instance_name
FROM dual
Run Code Online (Sandbox Code Playgroud)


Ham*_*sLi 4

对于您当前的会话?

从 gv$instance 中选择主机名,其中instance_number=userenv('instance');

对于所有会话:

从以下位置选择 i.host_name、s.username
  gv$session 加入
  gv$实例 i 上 (i.inst_id=s.inst_id)
在哪里
  用户名不为空;