数据库名

1)Oracle11g用参数DB_NAME来表示一个数据库名,在数据库创建完成之后, DB_NAME写入参数文件(init.ora)/控制文件。控制文件是二进制无法修改内容,如果修改参数文件中的DB_NAME,会启动失败(ORA-01103错误)。

2)Oracle安装文件目录是与数据库名有关

D:\app\Administrator\oradata\orcl
orcl

D:\app\Administrator\flash_recovery_area\orcl

D:\app\Administrator\admin\orcl

显示当前数据库名

Sqlplus> select name from v$database;
database

Sqlplus> show parameter db;

修改数据库名:关闭数据库---修改参数文件DB_NAME---NOMOUNT启动实例修改控制文件

数据库域名

数据库域名主要用于oracle分布式环境中的复制,例如,有个全国性的分布式数据库:

福建节点: fj.jtyz

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

江西: jx.jtyz

江西上饶:sr.jx.jtyz

存放参数文件中,参数是db_domain

显示数据库域名

Sqlplus> select value from v$parameter where name = 'db_domain';

Sqlplus> show parameter domain;
domain

全局数据库名

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

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

数据库实例名

1)实例名会被写入参数文件,instance_name参数,写入注册表(win平台)。

2)实例名是数据库和操作系统之间的交互的标识,一般情况下数据库名和实例名是一对一的关系。但在oracle实时应用集群,实例名和数据库名是N对1的关系.

3) 用于网络连接的oracle服务器标识

显示实例名

Sqlplus> select instance_name from v$instance;

Sqlplus> show parameter instance;
instance_name

数据库服务名

数据库服务名主要用于网络连接的关系,参数是SERVICE_NAME。

在oracle8i之前oracle网络组件,数据库与客户端的连接主机串,使用ORACLE_SID(数据库实例名),而之后的版本(oracle9i)开始使用参数SERVICE_NAME(数据库服务名)。

显示数据库服务名

Sqlplus> show parameter service_name
service_name

对比以上几张截图,小结:

如果数据库有域名,则数据库服务名==全局数据库名;否则,数据库服务名==数据库名。

文章来源:Oracle入门精读24-数据库名,数据库实例名,数据库服务名等概念区别

最后修改:2023 年 09 月 21 日
如果觉得我的文章对你有用,请随意赞赏