溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Oracle 數(shù)據(jù)庫的眾多 “NAME”

發(fā)布時(shí)間:2020-08-10 18:41:07 來源:ITPUB博客 閱讀:179 作者:Ryan_Bai 欄目:關(guān)系型數(shù)據(jù)庫

Oracle 有眾多名字,很多人容易弄混,下面會(huì)通過各個(gè)層面的展示,從視覺、流程角度去了解,而并非單一通過概念去認(rèn)識(shí)他們,這樣會(huì)更容易認(rèn)識(shí)他們,了解他們之間的區(qū)別

DB_NAME

數(shù)據(jù)庫名,長(zhǎng)度不能超過8個(gè)字符,記錄在 datafile、redolog 和 control file 中。

這部分可以通過 bbed 來查看存儲(chǔ)方式,我們拿 system01.dbf 數(shù)據(jù)文件舉例。

Oracle 數(shù)據(jù)庫的眾多 “NAME”

此處我們看到,數(shù)據(jù)文件頭只有八個(gè)字符的位置存儲(chǔ) Oracle 的數(shù)據(jù)庫名,這也是我們?yōu)槭裁凑f,長(zhǎng)度不能超過 8個(gè)字符,dump可以看到如下內(nèi)容:

Oracle 數(shù)據(jù)庫的眾多 “NAME”

從第 32 位字符開始,就是存儲(chǔ)的數(shù)據(jù)文件,給位置根據(jù)第一幅圖 O 所反饋的 @32 可知,也可以由以下語句進(jìn)行驗(yàn)證

Oracle 數(shù)據(jù)庫的眾多 “NAME”

DBID

DBID 是在數(shù)據(jù)庫創(chuàng)建的時(shí)候用DB_NAME結(jié)合算法計(jì)算出來的,由一串?dāng)?shù)字組成

它存在于 datafile 和 control file 中,用來表示數(shù)據(jù)文件的歸屬,所以DBID是唯一的,對(duì)于不同的數(shù)據(jù)庫,DB_NAME可以是相同的,但是DBID一定是唯一的

我們還是以上圖的 system01.dbf 為例,它是以倒序的形式存儲(chǔ)在數(shù)據(jù)文件頭部的

Oracle 數(shù)據(jù)庫的眾多 “NAME”

我們依然可以用to_char命令進(jìn)行驗(yàn)證

Oracle 數(shù)據(jù)庫的眾多 “NAME”

DB_UNIQUE_NAME

在DataGuard中,主備庫擁有相同的 DB_NAME,為了區(qū)別,就必須有不同的 DB_UNIQUE_NAME

SID & INSTANCE_NAME

在操作系統(tǒng)中要想得到實(shí)例名,就必須使用ORACLE_SID。initSID.ora 和 orapwSID 文件要與 ORACLE_SID 保持一致。

Oracle 數(shù)據(jù)庫的眾多 “NAME”

數(shù)據(jù)庫根據(jù) ORACLE_SID 來查找 spfile,然后以 ORACLE_SID 作為 INSTANCE_NAME 來啟動(dòng)實(shí)例,所以其相關(guān)的進(jìn)程名,亦為 ORACLE_SID 的名稱。

Oracle 數(shù)據(jù)庫的眾多 “NAME”

此名稱可以和數(shù)據(jù)庫名稱一致,也可以不一致,為了便于區(qū)分,一般差別不大。

手動(dòng)建庫時(shí),會(huì)讀取參數(shù)文件中 DB_NAME,然后在創(chuàng)建過程中寫入控制文件、數(shù)據(jù)文件和重做日志文件,所以數(shù)據(jù)庫名和實(shí)例名可以不一致。

SERVICE_NAME

數(shù)據(jù)庫和客戶端相連是使用的服務(wù)名,默認(rèn)與 DB_UNIQUE_NAME 一致,也可以添加多個(gè) SERVICE_NAME 用于服務(wù)。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI