ITPub博客

首页 > 数据库 > Oracle > SID是什么?用于什么场景

SID是什么?用于什么场景

原创 Oracle 作者:牛平 时间:2018-03-11 17:50:14 0 删除 编辑
问题背景:
    当在安装数据库的时候,发现有个SID的选项需要提供,究竟这个SID是什么,有什么作用?

SID是什么?
The Oracle System ID (SID) is used to uniquely identify a particular database on a system. For this reason, one cannot have more than one database with the same SID on a computer system.
When using RAC, all instances belonging to the same database must have unique SID's.

    Oracle SID用于唯一的标识系统中的一个特别意义的数据库,准确的说是数据库实例( Oracle Instance ),由于这个描述,在一台主机上,不会存在同一个SID的两个数据库实例。当使用RAC的时候,所有的属于同一个数据库的实例,必须具备不同的SID。

 SID是如何标识在一台计算机的指定实例的呢?
    SID和Oracle_home一起哈希成一个唯一的一个Key值,用于指向一个SGA,如果sid或者oracle_home任何一个无法正确设置,将无法正确附加在SGA之上。



如果想要切换不同的Oracle实例,用户必须设定相应的SID环境变量。在Unix下使用如下指令

export ORACLE_SID=orcl


查看SID:
    select instance from v$thread;

Note:Tom大师说,最好不要修改数据库的SID。



与Service Name的不同:

SID从定义上看是用来标识在系统中的唯一的一个数据库实例,而Service Name用于表示一个服务,这个服务可以由一个实例提供,也可以由多个实例来提供。ServiceName 用于客户端远程连接某台数据库使用,定义在客户端的tnsnames.ora文件之中,Service Name可以和SID一样,也可以不一样。服务器端的ServiceName注册于Listener之中。

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

上一篇: VMotion简介
下一篇: 共享池 shared pool
请登录后发表评论 登录
全部评论
一个在金融小企业瞎折腾的运维,梦想给小企业带来尽可能的标准化与自动化。

注册时间:2014-07-18

  • 博文量
    50
  • 访问量
    154501