oracle實例名和服務名 oracle中全局數據庫名和SID的區(qū)別?
oracle中全局數據庫名和SID的區(qū)別?全部展開數據庫名(DB_NAME)、實例名(Instance_name)和操作系統(tǒng)環(huán)境變量(ORACLE_SID)。ORACLE7和8數據庫中只有數據庫名(d
oracle中全局數據庫名和SID的區(qū)別?
全部展開
數據庫名(DB_NAME)、實例名(Instance_name)和操作系統(tǒng)環(huán)境變量(ORACLE_SID)。
ORACLE7和8數據庫中只有數據庫名(db_name)和數據庫實例名(instance_name)。ORACLE8i和9i中出現了新的參數,即數據庫域名(db_domain)、服務名(service_name)和操作系統(tǒng)環(huán)境變量(ORACLE_SID)。這些標識符存在于同一個數據庫中,用于區(qū)分不同數據庫的參數。
首先,什么是數據庫名(db_name)
數據庫名稱是用于區(qū)分數據的內部標識符,是以二進制存儲在數據庫控制文件中的參數。安裝或創(chuàng)建數據后,將不會對其進行修改。數據庫安裝完成后,該參數以下列格式寫入數據庫參數文件pfile:
[cod: 1 : 1 AAF 156970]
.........
Db_nameorcl #(不允許修改)
數據庫域
instance_nameorcl
服務名稱
控制文件(...............
.........
[/cod: 1 : 1 AAF 156970]
每個正在運行的ORACLE8i數據庫都有一個數據庫名(db_name)。如果在一個服務器程序中創(chuàng)建了兩個數據庫,則有兩個數據庫名稱。其控制參數屬于不同的pfile和控制相關數據庫。
第二,什么是數據庫實例名(instance_name)
數據庫實例名用于與操作系統(tǒng)的連接和外部連接。為了在操作系統(tǒng)中與數據庫進行交互,必須使用數據庫實例名。例如,如果您想連接一個數據庫服務器,您必須知道它的數據庫實例名。只知道數據庫名是沒有用的。與數據庫名稱不同,實例名稱可以在安裝數據或創(chuàng)建數據庫后修改。數據庫安裝完成后,實例名以下列格式寫入數據庫參數文件pfile:
[cod: 1 : 1 AAF 156970]
Db_nameorcl #(不允許修改)
數據庫域
Instance_nameorcl #(可以修改,可以與db_name相同或不同)
服務名稱
控制文件(...............
.........
[/cod: 1 : 1 AAF 156970]
數據庫名和實例名之間的關系。
數據庫名和實例名的關系一般是一一對應的。每個數據庫名都有一個實例名。如果在一個服務器中創(chuàng)建了兩個數據庫,則有兩個數據庫名稱和兩個數據庫實例名稱。一個數據庫由兩個標識符決定,用戶和實例被連接起來。
但是在8i和9i的并行服務器結構中,數據庫和實例之間不是一一對應的關系,而是一對多的關系。(一個數據庫對應多個實例,同時只能連接一個用戶實例。當一個實例出現故障時,其他實例會自動確保數據庫的安全運行。)
第三,操作系統(tǒng)環(huán)境變量(ORACLE_SID)
實際中,數據庫實例名的描述有時使用實例名參數,有時使用ORACLE_SID參數。這兩個都是數據庫實例名。什么?;它們之間有什么區(qū)別?(經常困惑)
[cod: 1 : 1 AAF 156970]
(ORACLE_SID)
操作系統(tǒng)-Oracle數據庫(實例名)。
[/cod: 1 : 1 AAF 156970]
上圖顯示了實例名instance_name和ORACLE_SID與數據庫和操作系統(tǒng)之間的關系。雖然這里列出的兩個參數是數據庫實例名,但是instance_name參數是ORACLE數據庫的一個參數,可以在參數文件中找到,而ORACLE_SID參數是一個操作系統(tǒng)環(huán)境變量。
操作系統(tǒng)環(huán)境變量ORACLE_SID用于與操作系統(tǒng)交互。也就是說,為了獲得操作系統(tǒng)中的實例名,必須使用ORACLE_SID。該參數的使用方法與ORACLE_BASE、ORACLE_HOME等相同。數據庫安裝后,ORACLE_SID用于定義數據庫參數文件的名稱。比如:
$ ORACLE _ BASE/admin/DB _ NAME/pfile/init $ ORACL:
[cod: 1 : 1 AAF 156970]
導出ORACLE_SIDorcl
[/cod: 1 : 1 AAF 156970]
如果在同一臺服務器上創(chuàng)建了多個數據庫,則必須同時有多個數據庫實例。此時,可以重復上述定義過程來選擇不同的實例。
你仍然可以使用它
[cod: 1 : 1 AAF 156970]
[]$ .oraenv
[/cod: 1 : 1 AAF 156970]
通過操作系統(tǒng)切換不同的ORACL
oracle怎么查看網絡服務名是什么?
1.可以通過netca網絡配置助手查看。
2.在tnsnames.ora文件中,您還可以看到網絡服務名。一般情況下,oracle的數據庫名、實例名和網絡服務名在創(chuàng)建時是一致的。