关于ORACLE_SID,db_name,instance_name,service_names [转]

ORACLE_SID,db_name,instance_name,service_names以及listener动态注册和静态注册的简单说明。

[@more@]
关于ORACLE_SID,db_name,instance_name,service_names
===========================================================

ORACLE_SID,db_name,instance_name,service_names以及listener动态注册和静态注册的简单说明。

ORACLE_SID
环境变量,用来标识共享内存段,也可以说是实例的名称,同一台机器,相同的ORACLE_HOME,不能使用相同的ORACLE_SID,因为不能创建相同的共享内存段,
INSTANCE_NAME
初始化参数,用于listener动态注册,和环境变量ORACLE_SID无关,两者可以不一致。
SERVICE_NAMES
初始化参数,用于listerer动态注册,可以设定多个值,service_names可以为同一个instance指定多个服务名称。
DB_NAME
初始化参数,同时记录在control file,data file,redo file的header中,初始化参数设置必须与控制文件相同。

listener动态注册:PMON进程自动将数据库的信息注册到listener中,或者使用alter system register显示注册,要求listener必须使用1521端口,使用动态注册将不需要在listener.ora中指定SID_LIST。如果指定了instance_name,service_names参数,动态注册将使用这两个参数,如果没有指定service_name,那么将使用db_domain+db_name作为service_name进行动态注册。
listener status看到如下内容:
Service "test" has 2 instance(s).
Instance "test", status UNKNOWN, has 1 handler(s) for this service...(静态注册)
Instance "test", status READY, has 1 handler(s) for this service...(动态注册)
如果指定了多个service_names,将会看到多个service指向同一个instance,如下:
Service "jackytest1" has 1 instance(s).
Instance "aaa", status READY, has 1 handler(s) for this service...
Service "jackytest2" has 1 instance(s).
Instance "aaa", status READY, has 1 handler(s) for this service...

listener静态注册:在listener中显示指定SID_LIST,静态注册中global_dbname的作用就如同动态注册中的service_names,用于为同一个instance设置多个别名
比如
(SID_DESC =
(GLOBAL_DBNAME = test1)
(ORACLE_HOME = /opt/oracle/products/9.2.0)
(SID_NAME = test1)
)
(SID_DESC =
(GLOBAL_DBNAME = xxxyyy)
(ORACLE_HOME = /opt/oracle/products/9.2.0)
(SID_NAME = test1)
)
这样就为test1这个instance设置了两个service_name,分别是test1和xxxyyy
Service "test1" has 1 instance(s).
Instance "test1", status UNKNOWN, has 1 handler(s) for this service...
Service "xxxyyy" has 1 instance(s).
Instance "test1", status UNKNOWN, has 1 handler(s) for this service...

tnsnames.ora的设置
可以使用service_name或者sid连接数据库,分别对应listener中的service和instance,这里要注意的是:如果ORACLE_SID和INSTANCE_NAME不同,那么动态注册使用的是instance_name,而静态注册使用的是ORACLE_SID的值,也就是真正的实例名称。

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

转载于:http://blog.itpub.net/7176288/viewspace-900301/

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值