溫馨提示×

溫馨提示×

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

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

ORACLE中的Server_name和SID概念理解

發(fā)布時間:2020-07-19 02:05:18 來源:網(wǎng)絡(luò) 閱讀:2150 作者:1清風(fēng)攬?jiān)? 欄目:數(shù)據(jù)庫

博文說明【前言】:

    本文將通過個人口吻介紹在ORACLE中的Server_name和實(shí)例名SID的相關(guān)概念,在目前時間點(diǎn)【2017年5月22號】下,所掌握的技術(shù)水平有限,可能會存在不少知識理解不夠深入或全面,望大家指出問題共同交流,在后續(xù)工作及學(xué)習(xí)中如發(fā)現(xiàn)本文內(nèi)容與實(shí)際情況有所偏差,將會完善該博文內(nèi)容。



本文參考文獻(xiàn)引用鏈接:

1、http://blog.csdn.net/luman1991/article/details/56286371

2、http://blog.csdn.net/yaksok/article/details/52130228




正文:


    SERVER_NAME參數(shù)是由oracle8i開始引進(jìn)的。在8i以前,使用SID來表示標(biāo)識數(shù)據(jù)庫的一個實(shí)例,但是在Oracle的并行環(huán)境中,一個數(shù)據(jù)庫對應(yīng)多個實(shí)例,這樣就需要多個網(wǎng)絡(luò)服務(wù)名,設(shè)置繁瑣。為了方便并行環(huán)境中的設(shè)置,引進(jìn)了Service_name參數(shù),該參數(shù)對應(yīng)一個數(shù)據(jù)庫,而不是一個實(shí)例,而且該參數(shù)有許多其它的好處。該參數(shù)的缺省值為Db_name. Db_domain,即等于Global_name。一個數(shù)據(jù)庫可以對應(yīng)多個Service_name,以便實(shí)現(xiàn)更靈活的配置。該參數(shù)與SID沒有直接關(guān)系,即不必Service name 必須與SID一樣,而sid是數(shù)據(jù)庫實(shí)例的名字,每個實(shí)例各不相同。


案例分析:


一、引入關(guān)系:

服務(wù)器=公司

數(shù)據(jù)庫=運(yùn)維支持部(數(shù)據(jù)庫分為單機(jī)和集群環(huán)境,也就是部門的人數(shù)多少關(guān)系)

數(shù)據(jù)庫集群環(huán)境=運(yùn)維支持部門(假設(shè)部門有小麗,小美兩名員工,對應(yīng)SID1,SID2)

數(shù)據(jù)庫連接請求=公司員工或者其他部門請求運(yùn)維部提供技術(shù)支持

數(shù)據(jù)庫服務(wù)器=裝載了數(shù)據(jù)庫的服務(wù)器,也就是擁有活躍運(yùn)維部門的公司,當(dāng)然服務(wù)器除了裝載數(shù)據(jù)庫,我還可以安裝其他軟件提供其他服務(wù)


二、工作過程:

1、老王是研發(fā)部門的一個員工,在連接數(shù)據(jù)庫的發(fā)現(xiàn)無法連接,因此在公司內(nèi)部溝通平臺發(fā)送了一個請求,請求運(yùn)維部查看下數(shù)據(jù)庫服務(wù)是否異常。

2)運(yùn)維部的小麗接受了這個問題,也就是小麗給老王提供了這次服務(wù),最終順利解決該問題

3)過了一周,老王又發(fā)現(xiàn)數(shù)據(jù)庫連接有問題,又在公司內(nèi)部溝通平臺發(fā)送了一個請求,請求運(yùn)維部查看下數(shù)據(jù)庫服務(wù)是否異常。

4)運(yùn)維部的小美接受了這個問題,也就是小美給老王提供了這次服務(wù),最終順利解決該問題


三、案例分析:

1、這里真實(shí)提供服務(wù)的就是SID(第一次是小麗SID1,第二次是小美SID2,第三次也是兩者之一)

2、運(yùn)維支持部門,在公司內(nèi)部溝通平臺對應(yīng)有一個虛擬用戶(Server_name),用戶將反饋提交給該用戶,然后由該虛擬用戶去調(diào)度后方真實(shí)節(jié)點(diǎn)提供服務(wù),使用過JIRA平臺的小伙伴應(yīng)該深有感觸。

3、用戶不用關(guān)系,真實(shí)給我提供服務(wù)的人是誰,每次只需要將問題提交給該虛擬用戶(server_name),就會有支持人員來解決我的問題。


注意:在這里用戶如果知道運(yùn)維部里面具體有誰,也可以配置成直接將問題分配給比如小麗,也就是說,在配置數(shù)據(jù)庫連接信息時,可以配置成直接連接SID,也可以配置成連接server_name,然后由server_name去調(diào)控SID去處理請求。


總結(jié):


SID:

一個數(shù)據(jù)庫可以有多個實(shí)例(如RAC集群環(huán)境),SID用來標(biāo)識數(shù)據(jù)庫內(nèi)部每個實(shí)例的名字,就好像一個部門里,每個人都有一個自己的名字(小麗和小美等)。


SERVICE_NAME:

數(shù)據(jù)庫對外宣稱的名字,它就像一個部門的名字,這個部門的名稱在數(shù)據(jù)庫的看門大爺(listener)那里有登記??撮T大爺一看你是要找SERVICE_NAME這個部門(運(yùn)維部),就告訴你我們公司確實(shí)有這個部門,于是你就找到了,連接就建立了。


對于集群來說,每個節(jié)點(diǎn)的SID 是不一樣的,但是SERVICE_NAME 可以包含所有節(jié)點(diǎn)。


一句話來說就是:

SID是對內(nèi)部來說的,是實(shí)例級別的一個名字,用于數(shù)據(jù)庫內(nèi)部之間稱呼。

SERVICE_是對外的,是數(shù)據(jù)庫級別的一個名字,用來告訴外面的人,我數(shù)據(jù)庫叫"SERVICE_NAME"。

你可以通過service_name參數(shù)指定這個名字是什么,可以有多個名字,名字隨便起,叫老王,老張都沒關(guān)系。如果你不指定,默認(rèn)的是Db_name. Db_domain,也就是global_name。


這些易混淆的名字,你只要記住,他們不是指數(shù)據(jù)庫,就是指實(shí)例,就這兩個東西,別無其它。他們具體用哪個名字,要看針對對象。是對數(shù)據(jù)庫,還是對操作系統(tǒng),還是對外部連接請求。分清楚這點(diǎn),就不容易混了




結(jié)尾:



     感謝閱讀,祝有收獲的一天,謝謝!





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

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

AI