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)

ORACLE数据库中ORACLE_SID与INSTANCE_NAME的区别 总之,ORACLE_SID和INSTANCE_NAME都是用于标识ORACLE数据库实例的参数,但它们的作用略有不同。ORACLE_SID主要用于连接到数据库实例,而INSTANCE_NAME主要用于在集群环境下区分不同的数据库实例。INSTANCE_NAME是数据库实例的名称,它是数据库实例在数据库中的唯一标识符。这样,我们就可以在集群环境下区分不同的数据库实例。在ORACLE数据库中,ORACLE_SID和INSTANCE_NAME都是用来标识数据库实例的参数,但它们之间存在一些区别。 阅读详情

相关推荐

修改ORACLE_SID总结 数据库

在Oracle数据库中,ORACLE_SID是一个用于标识唯一数据库实例的系统标识符。要修改ORACLE_SID,需要找到并编辑相应的配置文件,例如.bash_profile或者.profile文件(具体文件名称可能因操作系统而异)。在修改ORACLE_SID之前,首先需要停止当前运行的数据库实例。通过按照上述步骤修改ORACLE_SID,您可以成功地更改数据库实例的标识符。ORACLE_SID的修改还需要相应地更新监听器配置,以便监听器可以正确识别到数据库实例的新标识符。保存并关闭监听器配置文件。

bug_syntax119的博客 1160

关于sid 和数据库的实例

实例名: [quote]数据库实例名是用于和操作系统进行联系的标识,就是说数据库和操作系统之间的交互用的是数据库实例名。实例名也被写入参数文件中,该参数为instance_name,在winnt平台中,实例名同时也被写入注册表。 数据库名和实例名可以相同也可以不同。在一般情况下,数据库名和实例名是一对一的关系,但如果在oracle并行服务器架构(即oracle实时应用集群)中,数据库名和实...

woshilipengfei的博客 862

LPC2124定时器实现跑马灯

文章目录一、keil 4新建工程 一、keil 4新建工程 1、Create New Project,注意,最好添加进一个新建好的文件夹里,keil不会帮你新建。 2、添加设备类型:NXP目录下的LPC2124 3、选择启动文件Startu.s 4、new 一个file,保存命名为.c文件 5、添加进project里,右击,add 选中,添加 6、设置编译输出.hex文件 ...

qq_37937830的博客 5753

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

最近因看到论坛有人问起这方面的东西,将自己的理解加上查阅相关资料整理如下,如果不全或不当的地方,望指正并补全它。 数据库名(DB_NAME)、实例名(Instance_name)、以及操作系统环境变量(ORACLE_SID) 在ORACLE7、8数据库中只有数据库名(db_name)和数据库实例名(instance_name)。在ORACLE8i、9i中出现了新的参数,即数据库域名(db_

Arqui Standard 3573

【基金量化研究系列】基金绩效归因模型——Brinson多期归因模型

文章目录1. 引言2. Brinson单期归因模型2.1 模型框架2.2 公式推导3. Brinson多期归因模型3.1 模型框架3.2 公式推导4. Brinson模型的应用场景4.1 基金组合归因4.2 基金经理能力刻画4.3 大类资产配置应用5. 模型的实现与实证案例研究写在最后 1. 引言 在 2. Brinson单期归因模型 2.1 模型框架 wp wb rp 组合收益:wp rp 择股收益:wb rp rb 择时收益:wp rb 基准收益:wb rb 2.2 公式推

Mikey_Sun的博客 1万+

2024广东省职业技能大赛云计算——集群部署GitLab

题目是这样的:在Kubernetes集群中新建命名空间gitlab-ci,将GitLab部署到该命名空间下,Deployment和Service名称均为gitlab,以NodePort方式将80端口对外暴露为30880,设置GitLab服务root用户的密码为admin@123,将项目包demo-2048.tar.gz导入到GitLab中并命名为demo-2048。GitLab是一个功能强大且灵活的 DevOps 平台,为开发团队和企业提供了从代码管理到持续集成、交付和部署的一整套解决方案。

kuuuugua的博客 4396

Oracle数据库DB_NAME、SERVICE_NAME、SID、INSTANCE_NAME、DB_UNIQUE_NAME的区别

oracle数据库DB_NAME、DBID、DB_UNIQUE_NAME、SERVICE_NAME、SID、INSTANCE_NAME、GLOBAL_DATABASE_NAME的区别 DB_NAME: ①是数据库名,长度不能超过8个字符,记录在datafile、redolog和control file中 ②在DataGuard环境中DB_NAME相同而DB_UNIQUE_NAME不同 ③在RAC环境中,各个节点的DB_NAME 都相同,但是INSTANCE_NAME不同 ④DB_NAME还在动态注册监听的时

流浪猫之家 1909

从零开始:用Xilinx FPGA实现RISC-V单周期CPU(附完整Verilog代码)

本文详细介绍了如何使用Xilinx FPGA从零开始实现RISC-V单周期CPU,包括开发环境搭建、核心架构设计、Verilog代码实现及功能验证。通过实战指南和完整代码示例,帮助开发者掌握RISC-V CPU设计的关键技术,适用于嵌入式系统和定制化计算场景。

weixin_30664051的博客 547

Oracle数据库DB_NAME、SERVICE_NAME、SID、INSTANCE_NAME等区别

Oracle数据库DB_NAME、SERVICE_NAME、SID、INSTANCE_NAME、DB_UNIQUE_NAME的区别。 DB_NAME: ①是数据库名,长度不能超过8个字符,记录在datafile、redolog和control file中 ②在DataGuard环境中DB_NAME相同而DB_UNIQUE_NAME不同 ③在RAC环境中,各个节点的DB_NAME 都相同,但是INS...

weixin_33716557的博客 391

药物重定位实战:如何用反向找靶技术挖掘老药新用(附Python代码示例)

本文详细介绍了药物重定位中的反向找靶技术,通过分子相似性计算、机器学习模型和结构对接等方法,挖掘已有药物的新治疗潜力。附Python代码示例,帮助读者快速实现从分子结构到潜在靶标的智能预测,显著提升药物研发效率。

weixin_28726671的博客 259

HarmonyOS应用开发者基础认证

B. 自定义组件:可复用的 UI 单元,可组合其它组件。D. 内置组件:ArkTS中默认内置的基本组件和布局组件,开发者可以直接调用,如Column、Text、Divider、Button等。E. 属性方法:用于组件属性的配置,统一通过属性方法进行设置,如fontSize()、width()、height()、color() 等。在Column和Row容器组件中,justifyContent用于设置子组件在主轴方向上的对齐格式,alignItems用于设置子组件在交叉轴方向上的对齐格式。

牛肉胡辣汤 3819

oracle排名函数名词,Oracle中ORACLE_SID,INSTANCE_NAME,DB_NAME几个名词的区别

同事项目用到 Oracle,向我问起这些内容,虽本人忝列 OCP,但那是6年前的事了,这几年工作繁重,基本做了清零,受同事之托重新梳理了一遍。涉及到的名字包括如:DB_NAME,DB_DOMAIN,ORACLE_SID,INSTANCE_NAME, SERVICE_NAME 等。提起这些名字,首先要理解 ORACLE 的逻辑架构,我们通常说的可以访问的ORACLE DB。其实两部分组成:实例(包括...

weixin_35172689的博客 191

03、AC分析

本节我们将对之前的BUCK电路进行AC分析! 首先,我们之前的BUCK电路是开环电路,现在我们把它设计成闭环电路!电路图如下: 我们对闭环BUCK电路先瞬态仿真一下,波形如下: 然后在电路中加入小信号和波特图进行AC仿真 原理图如下: 增益为0时所对应的相位裕度为56°,这个相位裕度一定要大于0°,大于45°则比较稳定! ...

soumns丶涛的博客 3519

oracle数据库DB_NAME、DBID、DB_UNIQUE_NAME等的区别

oracle数据库DB_NAME、DBID、DB_UNIQUE_NAME等的区别 ①是数据库名,长度不能超过8个字符,记录在datafile、redolog和control file中 ②在DataGuard环境中DB_NAME相同而DB_UNIQUE_NAME不同 ③在RAC环境中,各个节点的DB_NAME 都相同,但是INSTANCE_NAME不同 ④DB_NAME还在动态注册监听的时候起作用...

qq_25662143的博客 972

VTK API 详解(134):vtkOBJWriter - 写入 OBJ 模型

是 VTK 中用于将数据写入 Wavefront OBJ 文件格式的类。OBJ 格式是广泛支持的 3D 网格模型格式,支持顶点、面和基本几何信息的保存,便于模型在多种三维软件间交换。

yumeiguo的博客 140

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

oracle 数据库DB_NAME、SERVICE_NAME、SID、INSTANCE_NAME、DB_UNIQUE_NAME的区别

DB_NAME: ①是数据库名,长度不能超过8个字符,记录在datafile、redolog和control file中 ②在DataGuard环境中DB_NAME相同而DB_UNIQUE_NAME不同 ③在RAC环境中,各个节点的DB_NAME 都相同,但是INSTANCE_NAME不同 ④DB_NAME还在动态注册监听的时候起作用,无论是否定义了SERVICE_NAME,PMON进程都会使用D...

Borntodieee的博客 578

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

ORACLE_SID, INSTANCE_NAME和DB_NAME的区别

1. ORACLE_SID ORACLE_SID以环境变量的形式出现,主要有两个作用: 1) 用于标识该实例的后台进程; 2) 用于决定该读取哪个参数文件; 2. INSTANCE_NAME INSTANCE...

238

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

db_name,instance_name,service_names,db_domain,dbid,oracle_sid等区别与联系

最近整理了一篇文章:oracle listener 有网友对数据库是否显式设置了instance_name和service_names提出疑问。 由此引发出db_name,instance_name,oracle_sid等等这些常见的参数都代表什么意思,怎么取值的,有什么区别? SQL> select * from v$version; BANNER -----------------...

独孤清扬玩DB 1588

DB_NAME,SID,ORACLE_SID等参数的剖析

在Oracle中,我们会遇到下面一系列的十分重要的参数。同时他们的含义也常常让我们混淆。这些参数有: ORACLE_SID, SID, INSTANCE_NAME, SERVICE_NAME, SERVICES_NAMES, DB_NAME, GLOBAL_DBNAME, SID_NAME,以及网络服务名(net service name),实例服务名(instance service na

steambreadpp的专栏 487

ORACLE DB_NAME ,GLOBAL_NAME,INSTANCE_NAME,ORACLE_SID,Service_NAME

DB_NAME:数据库名 DB_DOMAIN :数据库域名 GLOBAL_NAME : 数据库全局名 INSTANCE_NAME :数据库实例名 ORACLE_SID: 在创建oracle数据库时建议的数据库全局名称为 DB_NAME . DB_DOMAIN, DB_NAME加点再加DB_DOMAIN就是GLOBAL_NAME INSTA

doujzh的专栏 703

oracle instance_name,Oracle中ORACLE_SID,INSTANCE_NAME,DB_NAME几个名词的区别

同事项目用到 Oracle,向我问起这些内容,虽本人忝列 OCP,但那是6年前的事了,这几年工作繁重,基本做了清零,受同事之托重新梳理了一遍。涉及到的名字包括如:DB_NAME,DB_DOMAIN,ORACLE_SID,INSTANCE_NAME, SERVICE_NAME 等。提起这些名字,首先要理解 ORACLE 的逻辑架构,我们通常说的可以访问的ORACLE DB。其实两部分组成:实例(包括...

weixin_42134144的博客 203

数据库名(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)?数据库名是用于区分数据的内部标识,是

wise_man的专栏 928

SID、ORACLE_SID、INSTANCE_NAME、DB_NAME、SERVER_NAMES、GLOBAL_DBNAME等区别

监听中动态注册时的服务名(即lsnrctl status显示的的service对应的名称): (优先级别service_names.db_domain=db_unique_name.db_domain>db_name.db_domain) 如果有参数值service_names\db_unique_name, 则拼接service_names、db_unique_name参数值和db_domain参数值注册到监听,即两个值 如果只有参数值service_names,且值和db_name值不一样 则拼接

lusklusklusk的博客 1623

ORACLE之 DB_NAME、ORACLE_SID和INSTANCE_NAME

1、DB_NAME:数据库名,用于区分数据库的内部标识。数据库创建后,数据库名不能被修改。 2、ORACLE_SID:操作系统环境变量。 3、INSTANCE_NAME:数据库实例名,用于数据库和外部的交互。数据库创建后,实例名可以被修改。eg,连接某个数据库 就必须使用数据库实例名。

linan0930的专栏 876

ORACLE_SID,DB_NAME,INSTANCE_NAME的理解

ORACLE_SID,DB_NAME,INSTANCE_NAME三个参数在默认情况下设置为一致,导致我们无法分清楚之间有什么区别,这里记录下我的理解。 ORACLE_SID: 参数...

congtongwei2478的博客 117
上一篇: Unix常用命令
下一篇: Oracle 数据类型
junmail
博客等级 码龄22年 159粉丝 452原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值