如何检查oracle sid和数据库名称?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (35)

我想检查SID和当前数据库名称。

我正在使用以下查询来检查Oracle SID

select instance from v$thread;

但表或视图不存在错误即将到来。

我正在使用以下查询来检查当前数据库名称

select name from v$database;

但表或视图不存在错误即将到来。

对于上述两个问题有什么想法?

提问于
用户回答回答于

我认为select user from dual;应该给你当前的用户

select sys_context('userenv','instance_name') from dual;实例的名称

我相信你可以得到SID SELECT sys_context('USERENV', 'SID') FROM DUAL;

用户回答回答于

如果像我一样,你的目标是获取数据库主机和SID以生成Oracle JDBC URL,如

jdbc:oracle:thin:@<server_host>:1521:<instance_name>

以下命令将有所帮助:

Oracle查询命令来检查SID(或实例名称):

select sys_context('userenv','instance_name') from dual; 

Oracle查询命令检查数据库名称(或服务器主机):

select sys_context('userenv', 'server_host') from dual;

扫码关注云+社区