`
cocoeye
  • 浏览: 15139 次
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

DB_NAME、DBID、DB_UNIQUE_NAME、SERVICE_NAME、SID、INSTANCE_NAME、GLOBAL_DATABASE_NAME

 
阅读更多
搭建DG时,突然想起oracle这些为数众多的name,以下是概念整理,仅代表个人观点

DB_NAME:

①是数据库名,长度不能超过8个字符,记录在datafile、redolog和control file中

②在DataGuard环境中DB_NAME相同而DB_UNIQUE_NAME不同

③在RAC环境中,各个节点的DB_NAME 都相同,但是INSTANCE_NAME不同

④DB_NAME还在动态注册监听的时候起作用,无论是否定义了SERVICE_NAME,PMON进程都会使用DB_NAME动态注册监听



DBID:

①DBID可以看做是DB_NAME在数据库内部的表示,它是在数据库创建的时候用DB_NAME结合算法计算出来的

②它存在于datafile和control file中,用来表示数据文件的归属,所以DBID是唯一的,对于不同的数据库,DB_NAME可以是相同的,但是DBID一定是唯一的,例如在DataGuard中,主备库的DB_NAME相同,但是DBID一定不同(看过一个很形象的例子,就是可以有同名的人,但是身份证号码一定不同)



DB_UNIQUE_NAME:
①在DataGuard中,主备库拥有相同的DB_NAME,为了区别,就必须有不同的DB_UNIQUE_NAME

②DB_UNIQUE_NAME在DG中会影响动态注册的SERVICE_NAME,即如果采用的是动态注册,则注册的SERVICE_NAME为DB_UNIQUE_NAME,但是实例还是INSTANCE_NAME,即SID



INSTANCE_NAME:

①数据库实例的名称,INSTANCE_NAME默认值是SID,一般情况下和数据库名称(DB_NAME)相同,也可不同

②initSID.ora 和orapwSID 文件要与INSTANCE_NAME保持一致

③INSTANCE_NAME会影响进程的名称



SID:

①是操作系统中的环境变量,和ORACLE_HOME,ORACLE_BASE用法相同

②在操作系统中要想得到实例名,就必须使用ORACLE_SID。且ORACLE_SID必须与INSTANCE_NAME的值一致



SERVICE_NAME:

①数据库和客户端相连是使用的服务名

②在DataGuard中,如果采用动态注册,建议在主备库使用相同的service_names

③在DataGuard中,如果采用静态注册,建议在主备库上的listener中输入相同的服务名(service_name)

④如果采监听采用了静态注册,那么SERVICE_NAME就等于Listener.ora 文件中的GLOBAL_DATABASE_NAME的值



GLOBAL_DATABASE_NAME:

①GLOBAL_DATABASE_NAME 是listener配置的对外网络连接名称,可以是任意值

②在客户端配置监听的tnsnames.ora 文件中的service_name 与这个GLOBAL_DBNAME 保持一致就可以了

③配置静态监听注册时,需要输入SID和GLOBAL_NAME

分享到:
评论

相关推荐

    Sybase常见问题汇总

    文件中提及了一系列SQL命令和函数,包括查看当前数据库的select db_name(),获取当前数据库的dbid的select db_id(),数据类型转换的convert(),获取当前时间的select getdate(),判断是否为空并赋予默认值的isnull,...

    Oracle数据库迁移方案

    可以通过SQL查询`SELECT name, dbid FROM v$database;`或查看参数文件来获取数据库名。 2. **数据库实例名** (INSTANCE_NAME): 实例名是用户和操作系统交互时使用的标识。它与数据库名可以相同也可以不同,但在...

    oracle网络基础

    3. **db_unique_name**:数据库的全局唯一名称,由数据库名称加上一个域名组成。 4. **db_domain**:数据库的域名部分,常用于区分不同的数据库环境。 5. **global_name**:全局数据库名称,包含数据库名称和域名。 ...

    SQL常用优化脚本,优化SQL语句

    - **查看执行计数**:`SELECT UseCounts, RefCounts, CacheObjtype, ObjType, DB_NAME(8) as DatabaseName, SQL FROM syscacheobjects ORDER BY dbid, usecounts DESC, objtype`此脚本展示了数据库中缓存对象的使用...

    AWR报表内容对应SQL

    FROM DBA_HIST_DATABASE_INSTANCE DI, DBA_HIST_SNAPSHOTS S WHERE S.SNAP_ID = &beg_snap AND S.INSTANCE_NUMBER = DI.INSTANCE_NUMBER AND S.DBID = DI.DBID AND S.SNAP_ID = (SELECT MAX(SNAP_ID) FROM DBA_HIST...

    初学者不看后悔的oracle

    - `SELECT name, dbid FROM v$database` 显示数据库名和ID。 - `DESCRIBE 表名` 查看表结构,包括列名和数据类型。 - `SELECT * FROM sys.user_tab_columns WHERE table_name = '表名'` 获取特定表的列信息。 - ...

    SQL SERVER 2000

    SELECT Name, db_size, Owner, Dbid, Created, Status, compatibility_level FROM master.dbo.sysdatabases WHERE Name = 'database_name'; ``` - **表4-1:** | 列名 | 数据类型 | 说明 | |----------|------...

    SQL Server索引重建手册

    SELECT DB_NAME(ps.database_id) AS [DatabaseName], OBJECT_NAME(ps.[object_id]) AS [ObjectName], i.name AS [IndexName], ps.index_id, ps.index_type_desc, ps.avg_fragmentation_in_percent, ps....

    获取局域网数据库服务器列表

    String ls_name,ls_db_size,ls_owner,ls_dbid,ls_created,ls_status,ls_c_level DECLARE lsp_getdb PROCEDURE FOR sp_helpdb; EXECUTE lsp_getdb; FETCH lsp_getdb INTO :ls_name,:ls_db_size,:ls_owner,:ls_dbid,:...

    SQL Server健康查询

    DatabaseName = DB_NAME(qt.dbid) FROM sys.dm_exec_query_stats qs CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) as qt GROUP BY DB_NAME(qt.dbid) ORDER BY [TotalReads] DESC; ``` **解释**:这个查询通过...

    ora分析脚本

    -i instance# append # to ORACLE_SID -sid <sid> set ORACLE_SID to sid -top # limit some large queries to on # rows - repeat <interval> |forever> Repeat an coomand <count> time. Sleep <interval> ...

    数据库置疑修复.txt

    alter database db_name set single_user with rollback immediate ``` **知识点**: - `single_user` 设置表示将数据库设置为只允许一个用户连接。 - `with rollback immediate` 表示在切换到单用户模式时,强制...

    1Z0-063 176Q-整理.docx

    根据输出,`db_create_file_dest`、`db_file_name_convert`和`db_files`参数已经设置,但是没有提供`D3_file_name_convert`参数,这是创建PDB时的问题所在。因此,当尝试使用`FILE_NAME_CONVERT`来指定新PDB的数据...

    【数据库】Oracle异机logminer日志分析-.docx

    在进行日志分析时,需要注意数据库版本、DB NAME 和生成的数据字典的 DBID 必须与归档日志的一致。否则,可能会出现无法分析日志的问题。 在本文中,我们将使用 Oracle Linux Server release 6.5 作为操作系统,...

    数据库运维说明书.docx

    2. **数据库唯一名称**:查询`SELECT db_unique_name FROM v$database`可得到数据库的全局唯一名称。 3. **数据库ID**:`SELECT dbid FROM v$database`用于获取数据库的唯一标识符。 4. **创建时间**:`SELECT to_...

    oracle 11g ADG实施手册(亲测,已成功部署多次)

    - db_unique_name: pri - **备份数据库:** - IP: 192.168.11.121 - SID: std - db_name: pri - db_unique_name: std **1.3 基础要求** - 安装两台虚拟机分别作为主库和备库。 - 硬盘大小要求: - 根分区至少20...

    db2db配置详细说明

    ### db2db配置详细说明 #### 一、db2db简介 `db2db`是一款功能强大的数据库同步工具,能够实现不同数据库之间的定时同步。它适用于多种场景下的数据迁移、同步需求,尤其对于那些需要定期将数据从一个数据库转移到...

    数据库运维说明书范文 数据库运维.docx

    - **数据库唯一名称**: `SELECT db_unique_name FROM v$database;` - 获取数据库的唯一名称,这对于识别数据库实例特别有用。 - **数据库ID**: `SELECT dbid FROM v$database;` - 每个Oracle数据库都有一个唯一的...

    ORACLE EBS全新环境了解步骤

    - **实例基本信息**:`SELECT dbid, name, open_mode, database_role, platform_name FROM v$instance;`提供了关于数据库实例的基本信息,包括数据库ID、名称、打开模式、角色以及运行平台等。 - **其他相关信息**:...

Global site tag (gtag.js) - Google Analytics