oracle中的几种名称概念

有关数据库名,实例名,网络服务名和服务名的概念理解,请指正!


--数据库实例名(INSTANCE_NAME)----------------
  数据库实例名是用于和操作系统之间的联系,也就是说用于对外连接,操作
系统与数据库交互,必须使用数据库实例名。数据库实例名在创建数据库后,
可以被修改,该参数也被写入数据库参数文件PFILE文件中:INSTANCE_NAME = testDB
此参数是在安装时确定

--数据库名(DB_NAME)--------------
  是用于区分数据库的内部标识,即Oracle数据库的内部标记,
是以二进制方式存储于控制文件中的参数,数据库创建完成之后不得修改,
该参数也被写入数据库参数文件PFILE文件中:DB_NAME = testDB
在多处操作中需要使用数据库名,包括数据库安装、创建新数据库、创建
数据控制文件、修改数据库结构、及使用备份与恢复工具时等。
此参数是在安装时确定

--数据库域名(DB_DOMAIN)----------------
在数据库名后加(.DB_domain)构成,为保证数据库名在网络中的唯一性
主要在以下情况下考虑使用:
1 分布式环境下,两个数据库通过数据库链路进行远程传输
2 同一环境下,两个数据库的数据库名相同
如不属上述情况,可不考虑数据库域名问题,以便于数据库理解
此参数是在安装时确定

--全局数据库名(GLOBAL_DB_NAME)----------------
  它唯一标识该数据库,以区别于任何其它数据库,全局数据库名由以下形式构成
  数据库名 + 数据库域名如:testDB.ChinaMobile.com


--数据库服务名(SERVICE_NAMES)----------------
数据库的逻辑表示,它是数据库呈现给客户机的方式。缺省为全局数据库名,即在安装
或数据库创建期间输入的由数据库和域名组成的一种名称,如不存在数据域名时即为数据库名。
在参数文件PFILE中由SERVICE_NAMES指定: SERVICE_NAMES = testDB.ChinaMobile.com


--操作系统环境变量(ORACLE_SID)----------------
也是Oracle数据库实例名,但它是操作系统的环境变量,用于和操作系统的交互。


--网络服务名(NET SERVICES NAME)
它是“连接描述符”简称,

--连接描述符
连接描述符是网络连接目标特殊格式的描述,它包括网络协议、主机名称或地址、和目标服务
在Oracle7和Oracle8版本,目标服务由Oracle系统标识符(SID)来标识,而Oracle8i、Oracle9i则通过
数据库服务名来来标识。保存tnsnames.ora文件中在格式如下:
myDB =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = testDB.ChinaMobile.com)
    )
  )


---------------------------------------------------------------------------------------
    在Oracle7和Oracle8中只存数据库名和数据实例名,而在Oracle8i和Oracle9i中又增加了数据域名、
数据服务名、全局数据名三个新参数,这些参数都是存在于同一数据库并对这一数据库进行标识,
即用于区别于不同数据库的参数

实例名=系统标识符(SID),服务名和实例名都是对数据库的标识,
服务名是数据库的逻辑表示映射的是数据库名,
而实例名也与数据库名是一一对应关系(不包括并行服务结构)

Oracle7和Oracle8通过实例名(SID)来连接数据库
而Oracle8i和Oracle9i是通过服务名来连接数据库


网络服务名是连接描述符的简称,连接描述符中包括
网络协议、主机名称或地址、和服务目标,服务目标根据
Oracle版本来选择使用实例名和服务名来标识
http://blog.sina.com.cn/s/blog_5dc3d5db0100d9a4.html~type=v5_one&label=rela_prevarticle

你可能感兴趣的:(数据结构,oracle,.net,网络协议,Blog)