`
- 浏览:
15138 次
-
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
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
文件中提及了一系列SQL命令和函数,包括查看当前数据库的select db_name(),获取当前数据库的dbid的select db_id(),数据类型转换的convert(),获取当前时间的select getdate(),判断是否为空并赋予默认值的isnull,...
可以通过SQL查询`SELECT name, dbid FROM v$database;`或查看参数文件来获取数据库名。 2. **数据库实例名** (INSTANCE_NAME): 实例名是用户和操作系统交互时使用的标识。它与数据库名可以相同也可以不同,但在...
3. **db_unique_name**:数据库的全局唯一名称,由数据库名称加上一个域名组成。 4. **db_domain**:数据库的域名部分,常用于区分不同的数据库环境。 5. **global_name**:全局数据库名称,包含数据库名称和域名。 ...
- **查看执行计数**:`SELECT UseCounts, RefCounts, CacheObjtype, ObjType, DB_NAME(8) as DatabaseName, SQL FROM syscacheobjects ORDER BY dbid, usecounts DESC, objtype`此脚本展示了数据库中缓存对象的使用...
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...
- `SELECT name, dbid FROM v$database` 显示数据库名和ID。 - `DESCRIBE 表名` 查看表结构,包括列名和数据类型。 - `SELECT * FROM sys.user_tab_columns WHERE table_name = '表名'` 获取特定表的列信息。 - ...
SELECT Name, db_size, Owner, Dbid, Created, Status, compatibility_level FROM master.dbo.sysdatabases WHERE Name = 'database_name'; ``` - **表4-1:** | 列名 | 数据类型 | 说明 | |----------|------...
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,:...
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; ``` **解释**:这个查询通过...
-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> ...
alter database db_name set single_user with rollback immediate ``` **知识点**: - `single_user` 设置表示将数据库设置为只允许一个用户连接。 - `with rollback immediate` 表示在切换到单用户模式时,强制...
根据输出,`db_create_file_dest`、`db_file_name_convert`和`db_files`参数已经设置,但是没有提供`D3_file_name_convert`参数,这是创建PDB时的问题所在。因此,当尝试使用`FILE_NAME_CONVERT`来指定新PDB的数据...
在进行日志分析时,需要注意数据库版本、DB NAME 和生成的数据字典的 DBID 必须与归档日志的一致。否则,可能会出现无法分析日志的问题。 在本文中,我们将使用 Oracle Linux Server release 6.5 作为操作系统,...
2. **数据库唯一名称**:查询`SELECT db_unique_name FROM v$database`可得到数据库的全局唯一名称。 3. **数据库ID**:`SELECT dbid FROM v$database`用于获取数据库的唯一标识符。 4. **创建时间**:`SELECT to_...
- db_unique_name: pri - **备份数据库:** - IP: 192.168.11.121 - SID: std - db_name: pri - db_unique_name: std **1.3 基础要求** - 安装两台虚拟机分别作为主库和备库。 - 硬盘大小要求: - 根分区至少20...
### db2db配置详细说明 #### 一、db2db简介 `db2db`是一款功能强大的数据库同步工具,能够实现不同数据库之间的定时同步。它适用于多种场景下的数据迁移、同步需求,尤其对于那些需要定期将数据从一个数据库转移到...
- **数据库唯一名称**: `SELECT db_unique_name FROM v$database;` - 获取数据库的唯一名称,这对于识别数据库实例特别有用。 - **数据库ID**: `SELECT dbid FROM v$database;` - 每个Oracle数据库都有一个唯一的...
- **实例基本信息**:`SELECT dbid, name, open_mode, database_role, platform_name FROM v$instance;`提供了关于数据库实例的基本信息,包括数据库ID、名称、打开模式、角色以及运行平台等。 - **其他相关信息**:...