Testing

如何知道我連接到 Oracle RAC 的哪個節點?

  • March 4, 2021

是否有一種簡單的方法可以確定我連接到 Oracle 11g R2 系統的哪個 RAC 節點?我正在嘗試執行一些故障轉移測試,並且我想確保我的應用程序正確連接到一個節點,並且在此節點關閉時,節點可以順利過渡到另一個節點,而前端沒有任何明顯的延遲。也許值得一提的是,我們使用了 TAF。

我考慮過為此使用企業管理器,但我想當我連接到一個執行 em 的節點並且該節點出現故障時,我將沒有機會監控節點的連接狀態。

對於您目前的會話?

從 gv$instance 中選擇 host_name 其中 instance_number=userenv('instance');

對於所有會話:

選擇 i.host_name, s.username from
gv$session 加入
gv$instance i on (i.inst_id=s.inst_id)
在哪裡
使用者名不為空;

對於目前會話:

SELECT sys_context('USERENV', 'INSTANCE') AS instance#,
      sys_context('USERENV', 'INSTANCE_NAME') AS instance_name
FROM dual

引用自:https://serverfault.com/questions/229583