Service_name,Instance_name,db_name,ORACLE_SID,连接标识符详解

一直对ORACLE中各种名字不是很清晰,这两天做了比较细致的研究,也算是小有成就吧,哈哈!

Service_name数据库逻辑上表现为一个服务,服务名可以任意取,并且一个数据库可以有 多个服务名,名字由参数Service_names决定,如果该参数为空,默认的服务名为全局数据库名,即db_name.db_domain。

Instance_name实例与数据库的对应关系是多对一,由参数instance_name指定,当系统的实例与数据库为一对一关系时,通常实例名即为数据库名。

[@more@]

db_namedb_name与db_domain组成全局数据库名,唯一地标识一个Oracle数据库,db_name在数据库创建后就不能再更改。

ORACLE_SID全称是Oracle System Identifier,是以环境变量的形式出现,用于区分不同的实例。所以ORACLE_SID其实就是当前想连接的实例名,因为实例与数据库是多对一的关系,所以确定了实例,就等于确定了要连接的数据库。

连接标识符:下面是一个tnsnames.ora文件的基本内容:

ORACLE =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.111)(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = ora10g)

)

)

其中ORACLE即是连接标识符,当使用本地命名的方式,在应用程序(如SQL*PLUS)连接Oracle时,使用的就是连接标识符,如

“sqlplus scott/tiger@oracle

连接标识符等号右边的内容全部为连接描述符,是使用本地命名连接Oracle时所需的信息。

SERVICE_NAME就是参数Service_names中的值,必须与该参数的值对应,如果参数为空,那这里的SERVICE_NAME只能是db_name.db_domain,否则无法连接Oracle。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10176825/viewspace-1016095/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10176825/viewspace-1016095/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值