Oracle数据库名、实例名、数据库域名、数据库服务名、全局数据库名的辨析

我也是看着各位大婶的博客然后一点点的来学习,不求全会,留个印象

数据库名

数据库名就是一个数据库的标识,用参数DB_NAME表示。

如果一台机器上安装了多个数据库,那么每一个数据库都有一个数据库名。

查看当前数据库名

select name from v$database;

show parameter db;

查看参数文件

数据库名在一开始准备建库的时候就应该考虑好,不要等到后面才来该数据库名,这样会很麻烦。也容易出问题。

数据库实例名

数据库实例名是操作系统和数据库进行交互时所用到的名称。

数据库实例名也被写入参数文件中,用instance_name表示,如果在windows下也会被写入注册表中。

一般来说实例名和数据库名是一对一的关系,但是如果实在oracle集群中,数据库名和实例名是一对多的关系。

数据库实例名与ORACLE_SID

instance_name是oracle数据库参数,而ORACLE_SID是操作系统的环境变量。

在数据库连接过程中,ORACLE_SID必须与instance_name的值一致,否则报错:

unix下:oracle not available

win下:TNS:协议适配器错误

数据库实例名还是网络连接的oracle服务器标识。

当配置oracle主机连接串的时候,就需要指定实例名,当然8i以后版本的网络组件要求使用的是服务名SERVICE_NAME。

数据库域名

在分布式数据库系统中,不同版本的数据库服务器之间,不论运行的操作系统是unix还是windows,各服务器之间都可以通过数据库链路进行远程复制,数据库域名主要用于oracle分布式环境中的复制。

比如全国交通运政系统的分布式数据库,其中

福建节点:fj.jtyz

福建厦门节点:xm.fj.jtyz

这就是数据库域名。

数据库域名存在于参数文件中,其参数是db_domain

select value from v$parameter where name=‘db_domain‘;

show parameter domain

在参数文件中查看

全局数据库名

全局数据库名=数据库名+数据库域名

如前所述福建节点的全局数据库名是:oradb.fj.jtyz

数据库服务名

从oracle9i开始,引入了一个新的参数,即数据库服务名,参数为SERVICE_NAME。

如果数据库有域名,则数据库服务名就是全局数据库名;否则,数据服务名与数据库名相同。

select value from v$parameter where name = ‘service_name‘;

show parameter service_name;

在参数文件中查询

数据库服务名与网络连接

从oracle8i开始的oracle网络组件,数据库与客户端的连接主机串使用数据库服务名。之前用的是ORACLE_SID,即数据库实例名。

时间: 2024-10-12 16:56:23

Oracle数据库名、实例名、数据库域名、数据库服务名、全局数据库名的辨析的相关文章

ORACLE 数据库、实例、表空间、用户、数据库对象

Oracle是一种数据库管理系统,是一种关系型的数据库管理系统.通常情况了我们称的"数据库",包含了物理数据.数据库管理系统.内存.操作系统进程的组合体,就是指这里所说的数据库管理系统. 完整的Oracle数据库通常由两部分组成:Oracle数据库和数据库实例. ① Oracle数据库是一系列物理文件的集合: 组成Oracle数据库的文件可以分成三个类型:数据文件(data file).重做日志文件(redo log file)和控制文件(control file).数据文件保存数据,

已有实例 Oracle 下新增实例(2)通过dbca克隆实例

oracle11g通过dbca克隆实例:1.建模dbca -silent(静默方式) -createCloneTemplate(使用现有数据库创建克隆模板) -sourceDB(目标数据源) -templateName(模板名称)例:dbca -silent -createCloneTemplate -sourceDB satetest -templateName satedev 2.拷贝模板(两边环境需要一致,安装路径不用)将模板文件拷贝至目标主机的模板目录下路径:$ORACLE_HOME/a

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

数据库名.实例名.数据库域名.全局数据库名.服务名 , 这是几个令很多初学者容易混淆的概念.相信很多初学者都与我一样被标题上这些个概念搞得一头雾水.我们现在就来把它们弄个明白. 1数据库名   什么是数据库名?  数据库名就是一个数据库的标识,就像人的身份证号一样.他用参数DB_NAME表示,如果一台机器上装了多全数据库,那么每一个数据库都有一个数据库名.在数据库安装或创建完成之后,参数DB_NAME被写入参数文件之中.格式如下:DB_NAME=myorcl...在创建数据库时就应考虑好数据库名

oracle数据库名、实例名、ORACLE_SID、服务名、全局数据库名

一.数据库名什么是数据库名?数据库名就是一个数据库的标识,就像人的身份证号一样.他用参数 DB_NAME表示,如果一台机器上装了多全数据库,那么每一个数据库都 有一个数据库名.在数据库安装或创建完成之后,参数DB_NAME被写入 参数文件之中.格式如下:DB_NAME=myorcl...在创建数据库时就应考虑好数据库名,并且在创建完数据库之后,数据 库名不宜修改,即使要修改也会很麻烦.因为,数据库名还被写入控制 文件中,控制文件是以二进制型式存储的,用户无法修改控制文件的内 容.假设用户修改了参

oracle 数据库、实例、服务名、SID

参考:http://www.zhetao.com/content240 在实际的开发应用中,关于Oracle数据库,经常听见有人说建立一个数据库,建立一个Instance,启动一个Instance之类的话. 其实问他们什么是数据库,什么是Instance,很可能他们给的答案就是数据库就是Instance,Instance就是数据库啊,没有什么区别. 在这里,只能说虽然他们Oracle用了可能有了一定的经验,不过基础的概念还是不太清楚.(我目前就是这个状态) 一.什么是数据库,其实很简单,数据库就

区分Oracle的数据库,实例,服务名,SID

文章摘自:http://www.zhetao.com/content240 感谢分享O(∩_∩)O~ 在实际的开发应用中,关于Oracle数据库,经常听见有人说建立一个数据库,建立一个Instance,启动一个Instance之类的话.其实问他们什么是数据库,什么是Instance,很可能他们给的答案就是数据库就是Instance,Instance就是数据库啊,没有什么区别.在这里,只能说虽然他们Oracle用了可能有了一定的经验,不过基础的概念还是不太清楚. 什么是数据库,其实很简单,数据库就

【转】Oracle - 数据库的实例、表空间、用户、表之间关系

[转]Oracle - 数据库的实例.表空间.用户.表之间关系 完整的Oracle数据库通常由两部分组成:Oracle数据库和数据库实例. 1) 数据库是一系列物理文件的集合(数据文件,控制文件,联机日志,参数文件等): 2) Oracle数据库实例则是一组Oracle后台进程/线程以及在服务器分配的共享内存区. 在启动Oracle数据库服务器时,实际上是在服务器的内存中创建一个Oracle实例(即在服务器内存中分配共享内存并创建相关的后台内存),然后由这个Oracle数据库实例来访问和控制磁盘

Oracle - 数据库的实例、表空间、用户、表之间关系

完整的Oracle数据库通常由两部分组成:Oracle数据库和数据库实例. 1) 数据库是一系列物理文件的集合(数据文件,控制文件,联机日志,参数文件等): 2) Oracle数据库实例则是一组Oracle后台进程/线程以及在服务器分配的共享内存区. 在启动Oracle数据库服务器时,实际上是在服务器的内存中创建一个Oracle实例(即在服务器内存中分配共享内存并创建相关的后台内存),然后由这个Oracle数据库实例来访问和控制磁盘中的数据文件.Oracle有一个很大的内存快,成为全局区(SGA

[转]Oracle - 数据库的实例、表空间、用户、表之间关系

本文转自:http://www.cnblogs.com/adforce/p/3312252.html 完整的Oracle数据库通常由两部分组成:Oracle数据库和数据库实例. 1) 数据库是一系列物理文件的集合(数据文件,控制文件,联机日志,参数文件等): 2) Oracle数据库实例则是一组Oracle后台进程/线程以及在服务器分配的共享内存区. 在启动Oracle数据库服务器时,实际上是在服务器的内存中创建一个Oracle实例(即在服务器内存中分配共享内存并创建相关的后台内存),然后由这个