欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle数据库系统中实例名(即instance

程序员文章站 2024-01-28 15:25:16
...

Oracle数据库系统中实例名(即SID)和ORACLE_SID的区别 小结: ORACLE_SID是一个环境变量,而数据库实例名就是instance_name,或说 system identifier (SID)。 当有多个数据库存在时,我们可以通过“set ORACLE_SID =你所要登录的那个数据库的 数据库实例名

Oracle数据库系统中实例名(即SID)和ORACLE_SID的区别

小结:

ORACLE_SID是一个环境变量,而数据库实例名就是instance_name,或说system identifier (SID)。

当有多个数据库存在时,我们可以通过“set ORACLE_SID=你所要登录的那个数据库的数据库实例名”,之后就可以通过如sqlplus / as sysdba 登录到你所要登录的那个数据库上。这个就是ORACLE_SID这个环境变量的作用。

至于说为什么可以通过“set ORACLE_SID=你所要登录的那个数据库的数据库实例名”就可以 登录到你所要登录的那个数据库上,其本质原因表述如下:

oracle数据库软件系统通过当前的ORACLE_SID值来找到对应参数文件(即spfileORACLE_SID>.ora),通过读取参数文件里的各个参数值(如instance_name、buffer_cache等)来创建一个数据库实例。所以,如果参数文件spfileORACLE_SID>.ora里的参数instance_name的值与ORACLE_SID相同,那么通过“set ORACLE_SID=你所要登录的那个数据库的数据库实例名instance_name”自然是可以 登录到你所要登录的那个数据库上去,而如果参数文件spfileORACLE_SID>.ora里的参数instance_name的值与ORACLE_SID不相同,那么通过“set ORACLE_SID=你所要登录的那个数据库的数据库实例名instance_name”则会登录到参数文件spfileORACLE_SID>.ora里的参数instance_name的值对应的那个数据库上去。