`
yingxiongwudi
  • 浏览: 57786 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

关于数据库名(db_name)、实例名(instance_name)、ORACLE_SID

阅读更多


数据库名(DB_NAME)、实例名(Instance_name)、以及操作系统环境变量(ORACLE_SID)

在ORACLE7、8数据库中只有数据库名(db_name)和数据库实例名(instance_name)。在ORACLE8i、9i中出现了新 的参数,即数据库域名(db_domain)、服务名(service_name)、以及操作系统环境变量(ORACLE_SID)。这些都存在于同一个 数据库中的标识,用于区分不同数据库的参数。

一、什么是数据库名(db_name)?
数据库名是用于区分数据的内部标识,是以二进制方式存储于数据库控制文件中的参数,在数据安装或创建之后将不得修改。数据库安装完成后,该参数被写入数据库参数文件pfile中,格式如下:

[code:1:1aaf156970]
.........
db_name="orcl" #(不允许修改)
db_domain=dbcenter.toys.com
instance_name=orcl
service_names=orcl.dbcenter.toys.com
control_file=(...............
.........
[/code:1:1aaf156970]

在每一个运行的ORACLE8i数据库中都有一个数据库名(db_name),如果一个服务器程序中创建了两个数据库,则有两个数据库名。其控制参数据分属在不同的pfile中控制着相关的数据库。

二、什么是数据库实例名(instance_name)
数据库实例名则用于和操作系统之间的联系,用于对外部连接时使用。在操作系统中要 取得与数据库之间的交互,必须使用数据库实例名。例如,要和某一个数据库server连接,就必须知道其数据库实例名,只知道数据库名是没有用的,与数据 库名不同,在数据安装或创建数据库之后,实例名可以被修改。数据库安装完成后,该实例名被写入数据库参数文件pfile中,格式如下:
[code:1:1aaf156970]
db_name="orcl" #(不允许修改)
db_domain=dbcenter.toys.com
instance_name=orcl #(可以修改,可以与db_name相同也可不同)
service_names=orcl.dbcenter.toys.com
control_file=(...............
.........
[/code:1:1aaf156970]
数据库名与实例名之间的关系。
数据库名与实例名之间的关系一般是一一对应关系,有一个数据库名就有一个实例名,如果在一个服务器中创建两个数据库,则有两个数据库名,两个数据库实例名,用两个标识确定一个数据库,用户和实例相连接。
但在8i、9i的并行服务器结构中,数据库与实例之间不存在一一对应关系,而是一对多关系,(一个数据库对应多个实例,同一时间内用户只一个实例相联系,当某一实例出现故障,其它实例自动服务,以保证数据库安全运行。)

三、操作系统环境变量(ORACLE_SID)
在实际中,对于数据库实例名的描述有时使用实例名(instance_name)参数,有时使用ORACLE_SID参数。这两个都是数据库实例名,它们有什么区别呢?(经常弄混)
[code:1:1aaf156970]

(ORACLE_SID)
OS<----------------> ORACLE 数据库 <--------(Instance_name(实例名))

[/code:1:1aaf156970]
上图表示实例名instance_name、ORACLE_SID与数据库及操作系统之间的关 系,虽然这里列出的两个参数都是数据库实例名,但instance_name参数是ORACLE数据库的参数,此参数可以在参数文件中查询到,而 ORACLE_SID参数则是操作系统环境变量。
操作系统环境变量ORACLE_SID用于和操作系统交互。也就是说,在操作系统中要想得到 实例名,就必须使用ORACLE_SID。此参数与ORACLE_BASE、ORACLE_HOME等用法相同。在数据库安装之后,ORACLE_SID 被用于定义数据库参数文件的名称。如:
$ORACLE_BASE/admin/DB_NAME/pfile/init$ORACLE_SID.ora。
定义方法:
[code:1:1aaf156970]
export ORACLE_SID=orcl
[/code:1:1aaf156970]

如果在同一服务器中创建了多个数据库,则必然同时存在多个数据库实例,这时可以重复上述定义过程,以选择不同实例。

还可以用
[code:1:1aaf156970]
[oracle@Datacent]$ . oraenv
[/code:1:1aaf156970]

来切换不同的ORACLE_SID来通过操作系统来启动不同的实例(instance)

四 查看实例名

  SQL> SELECT HOST_NAME, INSTANCE_NAME FROM V$INSTANCE;

HOST_NAME
-------------------------------------------------------
INSTANCE_NAME
----------------
GHOST-EF7E44257
test
分享到:
评论

相关推荐

    数据库名实例名sid的区别

    数据库名(DB_NAME)、实例名(Instance_name)、以及操作系统环境变量(ORACLE_SID) 在ORACLE7、 8数据库中只有数据库名(db_name)和数据库实例名(instance_name)。在ORACLE8i、9i中出现了新的参数,即数据库域名 (db_...

    Oracle9个_name介绍

    本文比较系统地介绍了Oracle中的9个name,如db_name,global_dbname,db_unique_name,instance_name,SID, service_name等参数。

    linux下的Oracle数据库安装,卸载和静默安装

    instance_name=orcl db_name=orcl sga_target=500M sga_max_size=500M job_queue_processes=10 undo_management=auto undo_tablespace=undotbs audit_file_dest=$ORACLE_BASE/admin/orcl/adump background_dump_dest...

    ORACLE 中的几个重点概念

    数据库名(DB_NAME)、数据库实例名(INSTANCE_NAME)、操作系统环境变量ORACLE_SID、数据库服务名(SERVICE_NAME)、数据库域名(DB_DOMAIN)以及全局数据库名(GLOBAL_DB_NAME)是几个使用Oracle数据库容易混淆的...

    oracle网络基础

    3.db_name、dbid、db_unique_name、db_domain、global_name、oracle_sid、instance_name、service_name介绍 4.修改db_name、db_unique_name、instance_name、instance_name 5.数据库连接测试脚本

    常用ORACLE知识浅析1

    DB_NAME:数据库名,建库的时候起的名字INSTANCE_NAME:实例名,一般与数据库名相同,也可以不同(常见于RAC)ORACLE_SID:操作系统层面

    Oracle 主要配置文件介绍

    LIST = (SID_DESC = (SID_NAME = PLSExtProc1) (ORACLE_HOME = /u01/app/oracle/product/8.1.7) (PROGRAM = extproc) ) (SID_DESC = (GLOBAL_DBNAME = cams) (ORACLE_HOME = /u01/...

    最全的oracle常用命令大全.txt

    su - oracle -c "exp system/manager full=y inctype=complete file=/oracle/export/db_comp$rq.dmp" 累计备份的SH文件:exp_cumu.sh rq=` date +"%m%d" ` su - oracle -c "exp system/manager full=y inctype=...

    oracle rac日常基本维护命令

    最后,启动 Oracle 实例(和相关服务)以及企业管理器数据库控制台。 $ export ORACLE_SID=orcl1 $ srvctl start nodeapps -n rac1 $ srvctl start asm -n rac1 $ srvctl start instance -d orcl -i orcl1 $ emctl...

    orcale常用命令

    ORACLE的数据字典是数据库的重要组成部分之一,它随着数据库的产生而产生, 随着数据库的变化而变化, 体现为sys用户下的一些表和视图。数据字典名称是大写的英文字符。 数据字典里存有用户信息、用户的权限信息、...

    Java 连接多种数据库代码参考

    Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID String user="test"; String password="test"; Connection conn...

    JDBC连接各种数据库字符串大全

    Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID String user="test"; String password="test"; Connection conn...

    JDBC 数据库常用连接链接字符串

    Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID String user="test"; String password="test"; Connection conn...

    Oracle9i的init.ora参数中文说明

    Oracle9i初始化参数中文说明 Blank_trimming: 说明: 如果值为TRUE, 即使源长度比目标长度 (SQL92 兼容) 更长, 也允许分配数据。 值范围: TRUE | FALSE 默认值: FALSE serializable: 说明: 确定查询是否获取表级...

    java 连接 DB 总汇合

    3. Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); 4. 5. String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID 6. 7. String user="test"; 8. 9. String ...

    数据库项目组日常运维及应急故障处理手册.docx

    (select value from v$parameter where name = 'instance_name') || ' ' ||p.spid from v$process p, v$bgprocess bp where p.ADDR = bp.PADDR(+) and bp.PADDR is null and p.SPID is not null; 在命令行...

    jsp连接数据库大全

    &lt;%Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为你的数据库的SID String user="scott"; String password="tiger"; ...

    ora分析脚本

    -i instance# append # to ORACLE_SID -sid &lt;sid&gt; set ORACLE_SID to sid -top # limit some large queries to on # rows - repeat &lt;interval&gt; |forever&gt; Repeat an coomand &lt;count&gt; time. Sleep &lt;interval&gt; ...

    php.ini-development

    There is no name validation. If PHP can't find an expected ; directive because it is not set or is mistyped, a default value will be used. ; The value can be a string, a number, a PHP constant (e.g....

Global site tag (gtag.js) - Google Analytics