理解Oracle数据库实例名:区别、查询与连接策略

理解Oracle数据库实例名:区别、查询与连接策略

一、数据库实例名

什么是数据库实例名?

数据库实例名是用于和操作系统进行联系的标识,就是说数据库和操作系统之间的交互用的是数据库实例名。实例名也被写入参数文件中,该参数为instance_name,在winnt平台中,实例名同时也被写入注册表。

数据库名和实例名可以相同也可以不同。

在一般情况下,数据库名和实例名是一对一的关系,但如果在oracle并行服务器架构(即oracle实时应用集群)中,数据库名和实例名是一对多的关系。

查询当前数据库实例名

方法一:select instance_name from v$instance;

方法二:show parameter instance

方法三:在参数文件中查询。

数据库实例名与ORACLE_SID

虽然两者都表是oracle实例,但两者是有区别的。instance_name是oracle数据库参数。而ORACLE_SID是操作系统的环境变量。 ORACLD_SID用于与操作系统交互,也就是说,从操作系统的角度访问实例名,必须通过ORACLE_SID。在winnt不台, ORACLE_SID还需存在于注册表中。

且ORACLE_SID必须与instance_name的值一致,否则,你将会收到一个错误,在unix平台,是“ORACLE not available”,在winnt平台,是“TNS:协议适配器错误”。

数据库实例名与网络连接

数据库实例名除了与操作系统交互外,还用于网络连接的oracle服务器标识。当你配置oracle主机连接串的时候,就需要指定实例名。当然8i以后版本的网络组件要求使用的是服务名SERVICE_NAME。这个概念接下来说明 。

————————————————

版权声明:本文为CSDN博主「weixin_39623620」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/weixin_39623620/article/details/113462150

相关推荐

socket 的阻塞模式和非阻塞模式
365bet亚洲版体育在线

socket 的阻塞模式和非阻塞模式

📅 07-23 👁️ 7448
DNF妖刀职业搭配指南:鬼泣、剑魂、狂战士、暗帝最强选择
365提款会被冻结卡吗

DNF妖刀职业搭配指南:鬼泣、剑魂、狂战士、暗帝最强选择

📅 06-29 👁️ 3124