ORACLE DB_NAME ,GLOBAL_NAME,INSTANCE_NAME,ORACLE_SID,Service_NAME
2013-08-01 00:24
393 查看
DB_NAME:数据库名
DB_DOMAIN :数据库域名
GLOBAL_NAME : 数据库全局名
INSTANCE_NAME :数据库实例名
ORACLE_SID:
在创建oracle数据库时建议的数据库全局名称为 DB_NAME . DB_DOMAIN, DB_NAME加点再加DB_DOMAIN就是GLOBAL_NAME
INSTANCE_NAME : 实例名建议实例名称为DB_NAME+SID 和 数据库名区分开
ORACLE_SID :在系统的注册表中,在连接sqlplus时如果没有指定连接的标识符,将会连接到注册表中指定的ORACLE_SID 实例,
如果在注册表中修改的这项值不正确,而且连接sqlplus没有指定连接标识符,将会出现 “TNS 协议适配器错误”的错误,unix下为
" ORACLE未准备好" 所以以后出现这个错误可以检查该项是不是正确。
SERVICE_NAME:是连接数据库时的连接标识符,如果创建数据库时数据库的全局名为DB_NAME.DB_DOMAIN
则oracle将会自动创建Service ,Sevice_name 为DB_NAME,在创建新的Service时可以选择是连接的是实例(SID)
还是数据库的服务(这个服务不是配置的这个服务),服务的名称和要连接的数据库全局名称是一样的,也可以连接指定的实例名,即第二个选项框输入实例名即可
注意:一个实例可以挂载不同的数据库,多个实例可能连接的是同一个数据库。在通过sqlplus连接数据库时,假设不建立服务而是直接通过IP和服务名称来连接数据库,该怎么写连接标识符呢?scott/tiger@192.168.xx.xx/dbname.db_domain ,即练级标识符为数据库全局名,也是数据库服务名
SQL 语句 :
SELECT * FROM V$INSTANCE; --数据库实例名
SELECT * FROM global_name; --全局数据库名
SELECT * FROM V$DATABASE; --数据库名
SELECT * FROM v$PARAMETER WHERE NAME LIKE 'service%' --数据库服务名
下图就是一个例子Service_Name为Orcl 连接到的不是数据库服务而是实例,而且连接实例名称为OrclSId
下图为配置一个Service的过程,在该界面可以选择连接是数据库服务
(不是连接的Service_name,有待进一步学习了解),数据库服务和全局数据库名是相同的
下图为配置一个Service的过程,在该界面可以选择连接是实例而不是数据库服务,实例名称必须写对哦
听网上大神说8i的时候,连接时候连的是Instance_id 即实例名,随着后面的发展,出现了一个数据库对应了多个实例,所以又增加了NetService的概念,Service_Name 再对应实例名或者数据库服务;
DB_DOMAIN :数据库域名
GLOBAL_NAME : 数据库全局名
INSTANCE_NAME :数据库实例名
ORACLE_SID:
在创建oracle数据库时建议的数据库全局名称为 DB_NAME . DB_DOMAIN, DB_NAME加点再加DB_DOMAIN就是GLOBAL_NAME
INSTANCE_NAME : 实例名建议实例名称为DB_NAME+SID 和 数据库名区分开
ORACLE_SID :在系统的注册表中,在连接sqlplus时如果没有指定连接的标识符,将会连接到注册表中指定的ORACLE_SID 实例,
如果在注册表中修改的这项值不正确,而且连接sqlplus没有指定连接标识符,将会出现 “TNS 协议适配器错误”的错误,unix下为
" ORACLE未准备好" 所以以后出现这个错误可以检查该项是不是正确。
SERVICE_NAME:是连接数据库时的连接标识符,如果创建数据库时数据库的全局名为DB_NAME.DB_DOMAIN
则oracle将会自动创建Service ,Sevice_name 为DB_NAME,在创建新的Service时可以选择是连接的是实例(SID)
还是数据库的服务(这个服务不是配置的这个服务),服务的名称和要连接的数据库全局名称是一样的,也可以连接指定的实例名,即第二个选项框输入实例名即可
注意:一个实例可以挂载不同的数据库,多个实例可能连接的是同一个数据库。在通过sqlplus连接数据库时,假设不建立服务而是直接通过IP和服务名称来连接数据库,该怎么写连接标识符呢?scott/tiger@192.168.xx.xx/dbname.db_domain ,即练级标识符为数据库全局名,也是数据库服务名
SQL 语句 :
SELECT * FROM V$INSTANCE; --数据库实例名
SELECT * FROM global_name; --全局数据库名
SELECT * FROM V$DATABASE; --数据库名
SELECT * FROM v$PARAMETER WHERE NAME LIKE 'service%' --数据库服务名
下图就是一个例子Service_Name为Orcl 连接到的不是数据库服务而是实例,而且连接实例名称为OrclSId
下图为配置一个Service的过程,在该界面可以选择连接是数据库服务
(不是连接的Service_name,有待进一步学习了解),数据库服务和全局数据库名是相同的
下图为配置一个Service的过程,在该界面可以选择连接是实例而不是数据库服务,实例名称必须写对哦
听网上大神说8i的时候,连接时候连的是Instance_id 即实例名,随着后面的发展,出现了一个数据库对应了多个实例,所以又增加了NetService的概念,Service_Name 再对应实例名或者数据库服务;
相关文章推荐
- 《深入解析ORACLE》学习笔记(3)---ORACLE中的DB_NAME,SERVICE_NAME,INSTANCE_NAME,ORACLE_SID,GLOBAL_DBNAME介绍
- ORACLE_SID, SID, INSTANCE_NAME, SERVICE_NAME, SERVICES_NAMES, DB_NAME, GLOBAL_DBNAME, SID_NAME迷糊了吗?
- ORACL中的DB_NAME,SERVICE_NAME,INSTANCE_NAME,ORACLE_SID,GLOBAL_DBNAME介绍
- 分清DB_NAME、INSTANCE_NAME、ORACLE_SID、SERVICE_NAME、DB_DOMAIN和GLOBAL_DB_NAME
- ORACLE中的DB_NAME,SERVICE_NAME,INSTANCE_NAME,ORACLE_SID,GLOBAL_DBNAME
- Oracle学习笔记—Db_name、Db_domain、Global_name、Service_name、Instance_name和Oracle_SID(转载)
- db_name,instance_name,ORACLE_SID,db_domain,global_name,service_name,net_service_name
- ORACLE中的db_name,service_names,instance_name,oracle_sid,global_dbname
- 搞清概念:db_name,instance_name,ORACLE_SID,db_domain,global_name,service_name,net_service_name
- 搞清概念:db_name,instance_name,ORACLE_SID,db_domain,global_name,service_name,net_service_name
- db_name、db_domain、service_name、global_name、instance_name、oracle_sid
- 搞清概念:db_name,instance_name,ORACLE_SID,db_domain,global_name,service_name,net_service_name
- db_name、db_domain、service_name、global_name、instance_name、oracle_sid
- ORACLE_SID、DB_NAME、INSTANCE_NAME、DB_DOMIAN、GLOBAL_NAME区分
- ORACLE_SID、DB_NAME、INSTANCE_NAME、DB_DOMIAN、GLOBAL_NAME
- oracle中的service_name,instance_name,db_name,oracle_sid,sid_name的用法及区别
- Oracle Names - Oracle_SID /db_name instance_name service_names / service_name / sid / sid_name
- ORACLE_SID、DB_NAME、INSTANCE_NAME、DB_DOMIAN、GLOBAL_NAME
- instance_name,ORACLE_SID和service_name之间的关系
- ORACLE_SID、DB_NAME、INSTANCE_NAME、DB_DOMIAN、GLOBAL_NAME