`
lycjt
  • 浏览: 32690 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

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)
分享到:
评论

相关推荐

    oracle中的全局数据库名称和sid的区别

    Oracle 中的全局数据库名称和 SID 的区别 Oracle 中的全局数据库名称和SID是两个不同的概念,分别用于标识数据库和实例。...了解这三个概念的区别和关系,对于Oracle数据库的管理和使用非常重要。

    修改oracle_sid和db_name名字

    在 Oracle 数据库中,sid 和 db_name 是两个非常重要的参数,分别表示数据库实例名和数据库名字。修改这两个参数需要谨慎,因为它们对数据库的运行和性能有着直接的影响。在本文中,我们将详细介绍如何修改 Oracle_...

    数据库名实例名sid的区别

    在Oracle数据库系统中,数据库名(DB_NAME)、实例名(INSTANCE_NAME)以及操作系统环境变量(ORACLE_SID)是区分和管理数据库的关键概念。这些参数在不同的Oracle版本中有不同的作用和重要性。 首先,数据库名(DB...

    oracle实例名,数据库名,服务名等概念区别与联系.doc

    通常情况下,数据库名和实例名是一对一的关系,但是在 Oracle 并行服务器架构中,数据库名和实例名是一对多的关系。 数据库域名 (DB_DOMAIN) 数据库域名是在分布式数据库系统中使用的概念,用于区别同名数据库。在...

    详解_数据库名、实例名、ORACLE_SID、数据库域名、全局数据库名、服务名

    详解_数据库名、实例名、ORACLE_SID、数据库域名、全局数据库名、服务名

    Oracle 9i安装中的全局数据库名及SID

    通过上述介绍可以看出,全局数据库名和SID是Oracle 9i数据库系统中非常重要的组成部分,它们不仅对于数据库的唯一标识至关重要,而且直接影响到数据库的正常运行和管理。因此,在安装和配置过程中,必须给予足够的...

    ORACLE_SID_实例名_数据库名_讲解

    在一般情况下,数据库名和实例名是一对一的关系,但如果在 oracle 并行服务器架构中,数据库名和实例名是一对多的关系。 ORACLE_SID 是操作系统的环境变量,用于与操作系统交互,也就是说,从操作系统的角度访问...

    oracle数据库日志查看方法

    Oracle数据库是企业级应用中广泛使用的数据库管理系统之一,为了确保数据库系统的稳定运行和快速定位问题,掌握Oracle数据库日志查看方法至关重要。本文将详细介绍如何查看Oracle数据库中的各种日志文件,并提供具体...

    解决Oracle数据库无法识别SID的解决方案

    本文档主要是解决Oracle数据库使用过程中,经常出现的SID无法识别问题的一个解决方案。

    [整理]修改oracle实例名&#40;sid&#41;和数据库名&#40;db_name&#41;.doc

    在Oracle数据库环境中,有时因为各种原因,我们可能需要更改数据库的实例名(SID)和数据库名(db_name)。这通常是由于系统迁移、合并或者规范命名等原因导致的。Oracle提供了多种方法来实现这一变更,其中既包括...

    根据oracle数据库sid及serial#查找操作系统sid号

    ### 根据Oracle数据库SID及Serial#查找操作系统SID号 在Oracle数据库管理中,了解如何通过特定的会话标识(SID)以及序列号(Serial#)来查询与该会话关联的操作系统进程ID(PID)是一项重要的技能。这对于诊断性能...

    oracle数据库和mysql数据库的链接信息

    根据给定文件的信息,...以上就是关于Oracle数据库和MySQL数据库连接信息的详细说明。正确配置这些信息对于确保应用程序能够成功连接到数据库至关重要。希望这些信息能够帮助你更好地理解和使用Oracle与MySQL数据库。

    ORACLE数据库安装配置说明

    4. **配置全局数据库名和系统标识符(SID)**:为你的数据库设置一个唯一的全局数据库名和SID,这将在后续连接中使用。 5. **创建数据库实例**:选择数据库类型(比如通用、实时应用集群等),配置内存参数,指定...

    Oracle数据库异地自动备份.pdf

    Oracle数据库异地自动备份是指将Oracle数据库备份到远程服务器或磁带上,以确保数据的安全和可靠性。本文将结合实践经验,讨论UNIX环境下Oracle数据库的自动备份实现方法。 一、数据库export备份 数据库export备份...

    ORACLE数据库备份用bat脚本

    在Oracle数据库环境中,我们可以利用Oracle的数据泵工具(expdp和impdp)来创建和恢复数据库备份。expdp是导出数据泵工具,用于生成数据的转储文件;impdp则是导入数据泵工具,用于将转储文件中的数据导入到数据库中...

    Python操作Oracle数据库的简单方法和封装类实例

    本文实例讲述了Python操作Oracle数据库的简单方法和封装类。分享给大家供大家参考,具体如下: 最近工作有接触到Oracle,发现很多地方用Python脚本去做的话,应该会方便很多,所以就想先学习下Python操作Oracle的...

    oracle数据库监听配置

    注意这里的全局数据库名与数据库 SID 有所区别,全局数据库名实际通过域名来控制在同一网段内数据库全局命名的唯一性。 六、本地服务名配置(Tnsnames) 本地服务名配置是指在 Oracle 客户端配置本地服务名的过程...

    oracle 数据库名、实例名、数据库域名、全局数据库名、服务名 解析

    以上五个概念在Oracle数据库管理和维护中都扮演着极其重要的角色。理解它们之间的关系及其使用方法可以帮助DBA更高效地管理和配置数据库。例如,在进行数据库备份、恢复、迁移等操作时,正确地设置这些参数是非常...

    Oracle数据库服务器配置

    - 在ODBC数据源管理器中创建一个新的数据源,指定Oracle数据库的相关信息,如主机名、端口、服务名或SID(System Identifier,这里是"orcl")。 - 测试数据源连接以确保配置正确。 4. **使用ODBC或JDBC连接数据库...

Global site tag (gtag.js) - Google Analytics