日期:2014-05-16  浏览次数:20373 次

oracle中众多的name

1、db_name数据库名
是区分数据的内部标识(即是给Oracle数据库内部使用的),因为其在数据库多处保存,并且控制文件中保存是二进制的,所以很难改变其名字,但是是可以修改的。在pfile中有db_name参数就是它。
作用:内部标记,在数据库安装、创建、创建控制文件、修改数据库结构、使用数据库备份与恢复时都使用数据库名(注意此时不是sid)
DB_NAME必须是一个不超过8个字符的文本串.在数据库创建过程中,db_name被记录在数据文件,日志文件和控制文件中。如果数据库实例启动过程中参数文件中的db_name和控制文件中的数据库名称不一致,则数据库不能启动。
2、instance_name实例名
用于和操作系统间联系,一个数据库可以有多个实例(并行服务)。要和一个数据库服务器相连,必须知道其实例名,光知道数据库名是没用的。在pfile中有instance_name参数,其实一般设置与数据库名称是相同的(不相同是自找麻烦),比较容易改变该参数
3、ORALCE_SID
同样是指数据库实例名,但ORACLE_SID是操作系统的环境变量设置,用于和操作系统交互,其取值必须与INSTANCE_NAME相同,而INSTANCE_NAME可在参数文件中查到,ORALCE_SID则不在此参数文件中
4、db_domain数据库域名
类似网络域名的概念,(所以一个数据库名db_name在不同的域里可以相同)在安装时确定(全局数据库名中填写),定义规则也相似于网络定义。参数文件中db_domain,如果没有该项则全局数据库名和数据库名相同,该数据库没有使用域名,域名可以修改
5、SERVICE_NAMES数据库服务名
定义为=全局数据库名,参数文件中service_names
6、全局数据库名
全局数据库名:= db_name+db_domain
7、Net service name:网络服务名
又可以称为数据库别名(database alias),是客户端程序访问数据库时所需要,屏蔽了客户端如何连接到服务器端的细节,实现了数据库的位置透明的特性。
小结:
一个实例可以mount并打开任何数据库,但是同一时间一个实例只能打开一个数据库。
一个数据库可以被一个或多个实例所mount并打开(在OPS/RAC环境下,一个数据库可以被多个实例所打开)。

另外的一个区别是,db_name通常限制在8个字符之