IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類|軟件專題|手機(jī)版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置: 首頁數(shù)據(jù)庫Oracle → ORACLE數(shù)據(jù)庫名、實(shí)例名、ORACLE_SID的區(qū)別

ORACLE數(shù)據(jù)庫名、實(shí)例名、ORACLE_SID的區(qū)別

時(shí)間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評(píng)論(1)

  數(shù)據(jù)庫名(DB_NAME)、實(shí)例名(Instance_name)、以及操作系統(tǒng)環(huán)境變量(ORACLE_SID)

  在ORACLE7、8數(shù)據(jù)庫中只有數(shù)據(jù)庫名(db_name)和數(shù)據(jù)庫實(shí)例名(instance_name)。在ORACLE8i、9i中出現(xiàn)了新的參數(shù),即數(shù)據(jù)庫域名(db_domain)、服務(wù)名(service_name)、以及操作系統(tǒng)環(huán)境變量(ORACLE_SID)。這些都存在于同一個(gè)數(shù)據(jù)庫中的標(biāo)識(shí),用于區(qū)分不同數(shù)據(jù)庫的參數(shù)。

  一、什么是數(shù)據(jù)庫名(db_name)?

  數(shù)據(jù)庫名是用于區(qū)分?jǐn)?shù)據(jù)的內(nèi)部標(biāo)識(shí),是以二進(jìn)制方式存儲(chǔ)于數(shù)據(jù)庫控制文件中的參數(shù),在數(shù)據(jù)安裝或創(chuàng)建之后將不得修改。數(shù)據(jù)庫安裝完成后,該參數(shù)被寫入數(shù)據(jù)庫參數(shù)文件pfile中,格式如下:

  .........

  db_name="orcl" #(不允許修改)

  db_domain=dbcenter.toys.com

  instance_name=orcl

  service_names=orcl.dbcenter.toys.com

  control_file=(...............

  .........

  在每一個(gè)運(yùn)行的ORACLE8i數(shù)據(jù)庫中都有一個(gè)數(shù)據(jù)庫名(db_name),如果一個(gè)服務(wù)器程序中創(chuàng)建了兩個(gè)數(shù)據(jù)庫,則有兩個(gè)數(shù)據(jù)庫名。其控制參數(shù)據(jù)分屬在不同的pfile中控制著相關(guān)的數(shù)據(jù)庫。

  二、什么是數(shù)據(jù)庫實(shí)例名(instance_name)

  數(shù)據(jù)庫實(shí)例名則用于和操作系統(tǒng)之間的聯(lián)系,用于對(duì)外部連接時(shí)使用。在操作系統(tǒng)中要取得與數(shù)據(jù)庫之間的交互,必須使用數(shù)據(jù)庫實(shí)例名。例如,要和某一個(gè)數(shù)據(jù)庫server連接,就必須知道其數(shù)據(jù)庫實(shí)例名,只知道數(shù)據(jù)庫名是沒有用的,與數(shù)據(jù)庫名不同,在數(shù)據(jù)安裝或創(chuàng)建數(shù)據(jù)庫之后,實(shí)例名可以被修改。數(shù)據(jù)庫安裝完成后,該實(shí)例名被寫入數(shù)據(jù)庫參數(shù)文件pfile中,格式如下:

  db_name="orcl" #(不允許修改)

  db_domain=dbcenter.toys.com

  instance_name=orcl #(可以修改,可以與db_name相同也可不同)

  service_names=orcl.dbcenter.toys.com

  control_file=(...............

  .........

  數(shù)據(jù)庫名與實(shí)例名之間的關(guān)系。

  數(shù)據(jù)庫名與實(shí)例名之間的關(guān)系一般是一一對(duì)應(yīng)關(guān)系,有一個(gè)數(shù)據(jù)庫名就有一個(gè)實(shí)例名,如果在一個(gè)服務(wù)器中創(chuàng)建兩個(gè)數(shù)據(jù)庫,則有兩個(gè)數(shù)據(jù)庫名,兩個(gè)數(shù)據(jù)庫實(shí)例名,用兩個(gè)標(biāo)識(shí)確定一個(gè)數(shù)據(jù)庫,用戶和實(shí)例相連接。

  但在8i、9i的并行服務(wù)器結(jié)構(gòu)中,數(shù)據(jù)庫與實(shí)例之間不存在一一對(duì)應(yīng)關(guān)系,而是一對(duì)多關(guān)系,(一個(gè)數(shù)據(jù)庫對(duì)應(yīng)多個(gè)實(shí)例,同一時(shí)間內(nèi)用戶只一個(gè)實(shí)例相聯(lián)系,當(dāng)某一實(shí)例出現(xiàn)故障,其它實(shí)例自動(dòng)服務(wù),以保證數(shù)據(jù)庫安全運(yùn)行。)

  三、操作系統(tǒng)環(huán)境變量(ORACLE_SID)

  在實(shí)際中,對(duì)于數(shù)據(jù)庫實(shí)例名的描述有時(shí)使用實(shí)例名(instance_name)參數(shù),有時(shí)使用ORACLE_SID參數(shù)。這兩個(gè)都是數(shù)據(jù)庫實(shí)例名,它們有什么區(qū)別呢?(經(jīng)常弄混)

  (ORACLE_SID)

  OS<----------------> ORACLE 數(shù)據(jù)庫 <--------(Instance_name(實(shí)例名))

  上圖表示實(shí)例名instance_name、ORACLE_SID與數(shù)據(jù)庫及操作系統(tǒng)之間的關(guān)系,雖然這里列出的兩個(gè)參數(shù)都是數(shù)據(jù)庫實(shí)例名,但instance_name參數(shù)是ORACLE數(shù)據(jù)庫的參數(shù),此參數(shù)可以在參數(shù)文件中查詢到,而ORACLE_SID參數(shù)則是操作系統(tǒng)環(huán)境變量。

  操作系統(tǒng)環(huán)境變量ORACLE_SID用于和操作系統(tǒng)交互。也就是說,在操作系統(tǒng)中要想得到實(shí)例名,就必須使用ORACLE_SID。此參數(shù)與ORACLE_BASE、ORACLE_HOME等用法相同。在數(shù)據(jù)庫安裝之后,ORACLE_SID被用于定義數(shù)據(jù)庫參數(shù)文件的名稱。如:$ORACLE_BASE/admin/DB_NAME/pfile/init$ORACLE_SID.ora。

  定義方法:

  export ORACLE_SID=orcl

  如果在同一服務(wù)器中創(chuàng)建了多個(gè)數(shù)據(jù)庫,則必然同時(shí)存在多個(gè)數(shù)據(jù)庫實(shí)例,這時(shí)可以重復(fù)上述定義過程,以選擇不同實(shí)例。

  還可以用

  [oracle@Datacent]$ . oraenv

  來切換不同的ORACLE_SID來通過操作系統(tǒng)來啟動(dòng)不同的實(shí)例(instance)

關(guān)鍵詞標(biāo)簽:ORACLE,數(shù)據(jù)庫名

相關(guān)閱讀

文章評(píng)論
發(fā)表評(píng)論

熱門文章 Oracle中使用alter table來增加,刪除,修改列的語法 Oracle中使用alter table來增加,刪除,修改列的語法 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 誤刪Oracle數(shù)據(jù)庫實(shí)例的控制文件 誤刪Oracle數(shù)據(jù)庫實(shí)例的控制文件 為UNIX服務(wù)器設(shè)置Oracle全文檢索 為UNIX服務(wù)器設(shè)置Oracle全文檢索

相關(guān)下載

    人氣排行 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 Oracle中使用alter table來增加,刪除,修改列的語法 ORACLE SQL 判斷字符串是否為數(shù)字的語句 ORACLE和SQL語法區(qū)別歸納(1) oracle grant 授權(quán)語句 ORACLE修改IP地址后如何能夠使用 如何加速Oracle大批量數(shù)據(jù)處理 Oracle刪除表的幾種方法