版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第三章Oracle網(wǎng)絡(luò)配置本章主要介紹Oracle的網(wǎng)絡(luò)組件與配置工具,通過(guò)學(xué)習(xí)同學(xué)們應(yīng)該熟練利用網(wǎng)絡(luò)配置工具進(jìn)行服務(wù)器端與客戶端的數(shù)據(jù)庫(kù)網(wǎng)絡(luò)連接配置。第三章Oracle網(wǎng)絡(luò)配置本章主要介紹Oracle的網(wǎng)絡(luò)組1本章學(xué)習(xí)目標(biāo):Oracle網(wǎng)絡(luò)服務(wù)組件Oracle網(wǎng)絡(luò)連接的基本概念服務(wù)器端網(wǎng)絡(luò)配置客戶端網(wǎng)絡(luò)配置(本地命名方式)本章學(xué)習(xí)目標(biāo):Oracle網(wǎng)絡(luò)服務(wù)組件21.1Oracle的網(wǎng)絡(luò)服務(wù)組件 為了適應(yīng)大型企業(yè)網(wǎng)絡(luò)應(yīng)用的要求,Oracle網(wǎng)絡(luò)服務(wù)結(jié)構(gòu)在可連接性、可管理性、可擴(kuò)展性以及網(wǎng)絡(luò)安全等方面均提供了完善的解決方案。組件一:OracleNet Oraclenet是同時(shí)駐留在oracle服務(wù)器與客戶端上的一個(gè)軟件層,它負(fù)責(zé)建立與維護(hù)客戶端應(yīng)用程序到數(shù)據(jù)庫(kù)服務(wù)器的連接。1.1Oracle的網(wǎng)絡(luò)服務(wù)組件 為了適應(yīng)大型企業(yè)網(wǎng)絡(luò)應(yīng)3Oraclenet主要由兩層組成:Oraclenet基礎(chǔ)層:
客戶端應(yīng)用程序與oraclenet基礎(chǔ)層進(jìn)行通信,從而建立與維護(hù)到服務(wù)器的連接。Oraclenet基礎(chǔ)層再對(duì)Oracle協(xié)議支持層進(jìn)行調(diào)用,從而利用工業(yè)標(biāo)準(zhǔn)的協(xié)議,如tcp/ip與數(shù)據(jù)庫(kù)服務(wù)器進(jìn)行通信。Oracle協(xié)議支持層:
為oraclenet基礎(chǔ)層提供基于工業(yè)標(biāo)準(zhǔn)協(xié)議的物理連接支持。Oraclenet主要由兩層組成:4組件二:Oraclenet監(jiān)聽(tīng)器
監(jiān)聽(tīng)器是位于服務(wù)器端的一個(gè)后臺(tái)進(jìn)程,它負(fù)責(zé)對(duì)客戶端傳入的連接請(qǐng)求進(jìn)行監(jiān)聽(tīng),并且負(fù)責(zé)對(duì)服務(wù)器端的連接負(fù)荷進(jìn)行調(diào)整。當(dāng)客戶端試圖建立一個(gè)到服務(wù)端的網(wǎng)絡(luò)會(huì)話時(shí),首先是由監(jiān)聽(tīng)器來(lái)處理實(shí)際的網(wǎng)絡(luò)連接請(qǐng)求的。一旦客戶端與服務(wù)器的連接已經(jīng)建立,客戶端和服務(wù)器即可直接通信,不再需要監(jiān)聽(tīng)器的參與。
(下圖所示是監(jiān)聽(tīng)器的工作方式)
組件二:Oraclenet監(jiān)聽(tīng)器
監(jiān)聽(tīng)器是位于服務(wù)器5Oracle網(wǎng)絡(luò)配置概論課件6組件三:網(wǎng)絡(luò)配置工具Oracle同時(shí)提供圖形化界面和命令行方式的網(wǎng)絡(luò)配置工具。包括:Oraclenetconfigurationassistant圖形化工具,通常在完成oracle數(shù)據(jù)庫(kù)服務(wù)器時(shí)會(huì)自動(dòng)啟動(dòng),利用它可以完成基本的網(wǎng)絡(luò)(監(jiān)聽(tīng)器)的配置工作。命令行配置工具LSNRCTL。對(duì)監(jiān)聽(tīng)器進(jìn)行配置、管理與監(jiān)視。Oraclenetmanager圖形化管理工具,提供對(duì)Oracle所有網(wǎng)絡(luò)組件進(jìn)行詳細(xì)配置的集中化管理界面,DBA可對(duì)創(chuàng)建的監(jiān)聽(tīng)器進(jìn)行進(jìn)一步的細(xì)致調(diào)整和配置。組件三:網(wǎng)絡(luò)配置工具7Oracle網(wǎng)絡(luò)配置概論課件81.2Oracle網(wǎng)絡(luò)連接的基本概念數(shù)據(jù)庫(kù)服務(wù)與數(shù)據(jù)庫(kù)實(shí)例標(biāo)識(shí)
對(duì)客戶端來(lái)說(shuō),一個(gè)oracle數(shù)據(jù)庫(kù)就是一個(gè)服務(wù),數(shù)據(jù)庫(kù)以提供服務(wù)的方式為客戶端完成某些特定的工作?;靖拍?服務(wù)名(servicename)
服務(wù)名是數(shù)據(jù)庫(kù)的邏輯表示,對(duì)于客戶端來(lái)說(shuō)就是數(shù)據(jù)庫(kù)的存在方式。一個(gè)數(shù)據(jù)庫(kù)可以具有多個(gè)服務(wù)名。在大部分情況下,數(shù)據(jù)庫(kù)的服務(wù)名就是它的全局?jǐn)?shù)據(jù)庫(kù)名(globaldatabasename),即數(shù)據(jù)庫(kù)名加上網(wǎng)絡(luò)域名。1.2Oracle網(wǎng)絡(luò)連接的基本概念數(shù)據(jù)庫(kù)服務(wù)與數(shù)據(jù)庫(kù)實(shí)例9 數(shù)據(jù)庫(kù)服務(wù)名通過(guò)初始化參數(shù)service_names來(lái)指定,service_names參數(shù)默認(rèn)值為全局?jǐn)?shù)據(jù)庫(kù)名(db_name參數(shù)加上db_domain參數(shù)),可以在初始化參數(shù)文件中設(shè)置,例如:service_names=foxconn.gz,foxconn.bj利用連接描述符訪問(wèn)數(shù)據(jù)庫(kù)服務(wù)
為了連接到數(shù)據(jù)庫(kù)服務(wù)器,客戶端必須使用“連接描述符”來(lái)提供數(shù)據(jù)庫(kù)的位置與數(shù)據(jù)庫(kù)服務(wù)名信息。基本概念:連接描述符(connectdescriptor)
連接描述符是一個(gè)特定網(wǎng)絡(luò)連接的描述格式字符串,在連接描述符中包含了目標(biāo)服務(wù)名以及網(wǎng)絡(luò)路徑的信息。目標(biāo)服務(wù)是數(shù)據(jù)庫(kù)的服務(wù)名,網(wǎng)絡(luò)路徑主要是指數(shù)據(jù)庫(kù)所監(jiān)聽(tīng)的網(wǎng)絡(luò)地址和端口信息等。 數(shù)據(jù)庫(kù)服務(wù)名通過(guò)初始化參數(shù)service_names來(lái)指10例:下面的連接描述符能夠使客戶端連接到一個(gè)服務(wù)名為foxconn.gz的數(shù)據(jù)庫(kù)。
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=sise)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=foxconn.gz)))服務(wù)處理器基本概念:服務(wù)處理器(servicehandler)
在數(shù)據(jù)庫(kù)服務(wù)器中實(shí)際為客戶連接請(qǐng)求提供服務(wù)的進(jìn)程。當(dāng)監(jiān)聽(tīng)器接收到一個(gè)客戶連接請(qǐng)求后,它將自動(dòng)選擇一個(gè)適當(dāng)?shù)姆?wù)處理器,然后將客戶連接請(qǐng)求交給服務(wù)器進(jìn)行處理,此后將由服務(wù)器與客戶端進(jìn)行網(wǎng)絡(luò)通信。例:下面的連接描述符能夠使客戶端連接到一個(gè)服務(wù)名為foxco11Oracle數(shù)據(jù)庫(kù)具有兩種類型的服務(wù)處理器:調(diào)度器(dispatcher):在共享服務(wù)結(jié)構(gòu)中,由調(diào)度器直接與客戶端會(huì)話進(jìn)行通信。調(diào)度器將來(lái)自客戶端的連接請(qǐng)求放入共享池中的請(qǐng)求隊(duì)列中,然后由空閑的共享服務(wù)進(jìn)程對(duì)連接請(qǐng)求進(jìn)行處理,處理的結(jié)果再由調(diào)度器返回給客戶端會(huì)話。因此,共享服務(wù)進(jìn)程并不作為服務(wù)處理器,而是由調(diào)度器作為服務(wù)處理器。專用服務(wù)進(jìn)程(dedicatedserver):如果客戶端需要連接的是一個(gè)專用服務(wù)進(jìn)程,監(jiān)聽(tīng)器將啟動(dòng)一個(gè)專用服務(wù)進(jìn)程,并將連接請(qǐng)求傳遞給這個(gè)專用服務(wù)進(jìn)程。此后,由這個(gè)專用服務(wù)進(jìn)程專門(mén)為客戶端會(huì)話服務(wù)。Oracle數(shù)據(jù)庫(kù)具有兩種類型的服務(wù)處理器:12命名方式(NamingMethod)
客戶端程序?qū)⑦B接標(biāo)識(shí)符轉(zhuǎn)換為連接描述符的一種機(jī)制。基本概念:連接字符串(connectstring)
客戶端在連接數(shù)據(jù)庫(kù)時(shí)需要提供的信息,包括用戶名、口令以及連接標(biāo)識(shí)符?;靖拍睿哼B接標(biāo)識(shí)符(connectidentifier)
連接標(biāo)識(shí)符是一個(gè)完整的連接描述符,或者是一個(gè)映射到連接描述符的名稱。連接標(biāo)識(shí)符通常也稱為“網(wǎng)絡(luò)服務(wù)名(netservicename)”??蛻舳嗽谶B接數(shù)據(jù)庫(kù)時(shí)需要在連接字符串中包含一個(gè)連接標(biāo)識(shí)符,然后通過(guò)特定的命名方式將連接標(biāo)識(shí)符解析為對(duì)應(yīng)的連接描述符,再利用連接描述符中包含的信息建立到數(shù)據(jù)庫(kù)服務(wù)器的連接。命名方式(NamingMethod)
客戶端程序?qū)⑦B接標(biāo)13客戶端提出連接請(qǐng)求時(shí)需要提供一個(gè)“連接字符串”,形式如下:connectusername/password@connect_identifier連接字符串“@”字符之后的部分是一個(gè)連接標(biāo)識(shí)符。連接標(biāo)識(shí)符實(shí)際上就是連接描述符的簡(jiǎn)寫(xiě)形式。可以在@字符之后直接給出完整的連接描述符,這樣過(guò)于繁瑣,例如Connectscott/tiger@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=wah)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=foxconn.gz)))客戶端提出連接請(qǐng)求時(shí)需要提供一個(gè)“連接字符串”,14如果利用連接標(biāo)識(shí)符foxconn來(lái)代替連接描述符,上面的連接字符串可以簡(jiǎn)化為下列形式:connectscott/tiger@foxconn建立連接時(shí)首先將foxconn映射到對(duì)應(yīng)的連接描述符,完成映射所需的信息保存在一個(gè)或多個(gè)資料檔案庫(kù)中或文件,客戶端將通過(guò)特定的“命名方式”來(lái)訪問(wèn)這些資料檔案庫(kù)。如果利用連接標(biāo)識(shí)符foxconn來(lái)代替連接描述符,15利用命名方式建立客戶端會(huì)話的步驟:客戶端在連接字符串中給出一個(gè)連接標(biāo)識(shí)符,提出初始連接請(qǐng)求。連接標(biāo)識(shí)符通過(guò)某種命名方式轉(zhuǎn)換為連接描述符,并將轉(zhuǎn)換后的信息返回給客戶端??蛻舳死眠B接描述符中提供的服務(wù)名與網(wǎng)絡(luò)地址向數(shù)據(jù)庫(kù)提出連接請(qǐng)求。監(jiān)聽(tīng)器收到連接請(qǐng)求后將它傳遞給數(shù)據(jù)庫(kù)服務(wù)器。到數(shù)據(jù)庫(kù)服務(wù)器的連接建立完畢。利用命名方式建立客戶端會(huì)話的步驟:16Oracle網(wǎng)絡(luò)服務(wù)結(jié)構(gòu)提供了如下幾種命名方式:本地命名方式(localnaming)目錄命名方式(directorynaming)oracle命名方式(oraclenaming)主機(jī)命名方式(hostnaming)外部命名方式(externalnaming)
本地命名方式是最常用的一種命名方式,它將連接標(biāo)識(shí)符與它們對(duì)應(yīng)的連接描述符都存儲(chǔ)在本地的名為T(mén)nsnames.ora的配置文件中,客戶端在本地能夠完成連接標(biāo)識(shí)符到連接描述符的映射。Oracle網(wǎng)絡(luò)服務(wù)結(jié)構(gòu)提供了如下幾種命名方式:171.3服務(wù)器端網(wǎng)絡(luò)配置監(jiān)聽(tīng)器的響應(yīng)方式監(jiān)聽(tīng)器的配置靜態(tài)服務(wù)注冊(cè)的配置動(dòng)態(tài)服務(wù)注冊(cè)的配置監(jiān)聽(tīng)器的管理操作1.3服務(wù)器端網(wǎng)絡(luò)配置監(jiān)聽(tīng)器的響應(yīng)方式18監(jiān)聽(tīng)器的響應(yīng)方式監(jiān)聽(tīng)器具有三種不同的相應(yīng)方式,分別是:Spawnandbequeath相應(yīng)方式
監(jiān)聽(tīng)器啟動(dòng)一個(gè)新的服務(wù)處理器,然后將客戶端連接信息交給新的服務(wù)處理器,僅適用于專用服務(wù)進(jìn)程。Directhandoff響應(yīng)方式
監(jiān)聽(tīng)器將客戶端連接信息直接發(fā)送給調(diào)度器,僅適用于共享服務(wù)進(jìn)程。重定向相應(yīng)方式
監(jiān)聽(tīng)器將客戶端連接信息通過(guò)網(wǎng)絡(luò)重定向的方式傳遞給調(diào)度器或?qū)S梅?wù)進(jìn)程。Oracle服務(wù)器有兩種不同類型的服務(wù)處理器:
調(diào)度器(dispatcher)和專用服務(wù)進(jìn)程。監(jiān)聽(tīng)器的響應(yīng)方式19監(jiān)聽(tīng)器的響應(yīng)方式:專用服務(wù)器
-監(jiān)聽(tīng)器啟動(dòng)新的服務(wù)進(jìn)程監(jiān)聽(tīng)器的響應(yīng)方式:專用服務(wù)器
-監(jiān)聽(tīng)器啟動(dòng)新的服務(wù)進(jìn)程20BequeathSession連接過(guò)程詳解:①client使用設(shè)定的協(xié)議向Listener發(fā)送一個(gè)CONNECT包,建立與Listener的連接。②Listener檢查SID是否已經(jīng)被定義。如果已經(jīng)被定義,Listener將fork一個(gè)新的進(jìn)程來(lái)處理此連接。一個(gè)Bequeath連接就在Listener和新的服務(wù)器進(jìn)程之間建立起來(lái),用于傳輸進(jìn)程初始化信息。隨后,Bequeath連接將被關(guān)閉。注意,TCPsockets是被新的服務(wù)器進(jìn)程繼承的。③服務(wù)器進(jìn)程會(huì)給client發(fā)送一個(gè)RESEND包。④一個(gè)新的CONNECT包在此從client發(fā)送到fork產(chǎn)生的服務(wù)器進(jìn)程⑤dedicated服務(wù)器進(jìn)程接到新的連接包,會(huì)返回一個(gè)ACCEPT包給client。BequeathSession連接過(guò)程詳解:①client21監(jiān)聽(tīng)器的響應(yīng)方式:共享或?qū)S梅?wù)器
-監(jiān)聽(tīng)器把請(qǐng)求交調(diào)度器或服務(wù)進(jìn)程監(jiān)聽(tīng)器的響應(yīng)方式:共享或?qū)S梅?wù)器
-監(jiān)聽(tīng)器把請(qǐng)求交調(diào)度器22RedirectSession連接過(guò)程詳解:①client使用設(shè)定的協(xié)議向Listener發(fā)送一個(gè)CONNECT包,建立與Listener的連接。②Listener檢查SID是否定義過(guò)。如果定義過(guò)SID,Listener將產(chǎn)生一個(gè)新的線程或是進(jìn)程給新的連接。一個(gè)IPC連接就被建立在Listener和新進(jìn)程/線程之間。③新進(jìn)程/線程從空閑user定義的ports中選一個(gè)作為新的TCP/IPport,并將該信息反饋給Listener。④Listener將此新的port插入到一個(gè)REDIRECT包中,并將其發(fā)送給client和之前client和Listener之間的TCPsocket。⑤一個(gè)新的TCP連接將建立在REDIRECT包中指定的地址上。并且CONNECT包將發(fā)送到指定的dedicated服務(wù)器進(jìn)程。⑥此時(shí)dedicated服務(wù)器進(jìn)程最終接受連接請(qǐng)求,并發(fā)出ACCEPT包給client。對(duì)于sharedservers模式中,redirect方式建立的connection過(guò)程類似,只是在②中不會(huì)產(chǎn)生新的進(jìn)程或是線程。RedirectSession連接過(guò)程詳解:①client23監(jiān)聽(tīng)器的配置
對(duì)監(jiān)聽(tīng)器的配置是服務(wù)器端網(wǎng)絡(luò)配置的重要內(nèi)容,主要是利用OracleConfigurationAssistant和Oraclenetmanager網(wǎng)絡(luò)配置工具進(jìn)行配置,以及直接編輯Listener.ora配置文件的方法對(duì)監(jiān)聽(tīng)器進(jìn)行配置。對(duì)監(jiān)聽(tīng)器的配置包含如下2個(gè)方面的內(nèi)容:
配置監(jiān)聽(tīng)器所監(jiān)聽(tīng)的協(xié)議和端口。監(jiān)聽(tīng)器的配置
對(duì)監(jiān)聽(tīng)器的配置是服務(wù)器端網(wǎng)絡(luò)配置的重要內(nèi)容,24命名方式的配置:
(配置與移植工具)命名方式的配置:
(配置與移植工具)25Oracle網(wǎng)絡(luò)配置概論課件26Oracle網(wǎng)絡(luò)配置概論課件27Oracle網(wǎng)絡(luò)配置概論課件28Oracle網(wǎng)絡(luò)配置概論課件29命名方式的設(shè)置保存在名為sqlnet.ora的文本文件中,它位于oracle_home\network\admin目錄中。(所有網(wǎng)絡(luò)配置的文件都在該目錄下)命名方式的設(shè)置保存在名為sqlnet.ora的文本文件中,30其中names.directory_path參數(shù)反映出客戶端所選擇使用的命名方式:
tnsnames代表本地命名方式, hostname代表主機(jī)命名方式,它們?cè)诶ㄌ?hào)中的順序代表解析名稱時(shí)嘗試的順序。也可以在netmanager中配置命名方式,如下圖所示:其中names.directory_path參數(shù)反映出客戶端31Oracle網(wǎng)絡(luò)配置概論課件32配置網(wǎng)絡(luò)服務(wù)名
命名方式配置的第2個(gè)步驟是建立連接標(biāo)識(shí)符到連接描述符的映射關(guān)系。對(duì)客戶端來(lái)說(shuō),連接標(biāo)識(shí)符也可稱為“網(wǎng)絡(luò)服務(wù)名”。 為本地命名方式配置網(wǎng)絡(luò)服務(wù)名可用
netconfigurationassistant和netmanager
兩種工具來(lái)完成,分別參考下面的圖示:配置網(wǎng)絡(luò)服務(wù)名
命名方式配置的第2個(gè)步驟是建立連接標(biāo)33Oracle網(wǎng)絡(luò)配置概論課件34Oracle網(wǎng)絡(luò)配置概論課件35Oracle網(wǎng)絡(luò)配置概論課件36Oracle網(wǎng)絡(luò)配置概論課件37Oracle網(wǎng)絡(luò)配置概論課件38Oracle網(wǎng)絡(luò)配置概論課件39Oracle網(wǎng)絡(luò)配置概論課件40Oracle網(wǎng)絡(luò)配置概論課件41Oracle網(wǎng)絡(luò)配置概論課件42Oracle網(wǎng)絡(luò)配置概論課件43服務(wù)名配置前tnsnames.ora服務(wù)名配置前tnsnames.ora44服務(wù)名配置后tnsnames.ora服務(wù)名配置后tnsnames.ora45網(wǎng)絡(luò)服務(wù)名配置完了之后我們就可以利用它來(lái)連接到服務(wù)器nik-pc的orcl數(shù)據(jù)庫(kù)。Connectscott/tiger@orcl_newservice網(wǎng)絡(luò)服務(wù)名配置完了之后我們就可以利用它來(lái)連接到服務(wù)器nik46監(jiān)聽(tīng)程序配置監(jiān)聽(tīng)程序配置47Oracle網(wǎng)絡(luò)配置概論課件48Oracle網(wǎng)絡(luò)配置概論課件49Oracle網(wǎng)絡(luò)配置概論課件50Oracle網(wǎng)絡(luò)配置概論課件51Oracle網(wǎng)絡(luò)配置概論課件52Oracle網(wǎng)絡(luò)配置概論課件53Oracle網(wǎng)絡(luò)配置概論課件54Oracle網(wǎng)絡(luò)配置概論課件55Oracle網(wǎng)絡(luò)配置概論課件56監(jiān)聽(tīng)器配置完畢之后會(huì)在服務(wù)管理處新增加一個(gè)Listenernew的服務(wù),該服務(wù)就是一個(gè)新的監(jiān)聽(tīng)器,監(jiān)聽(tīng)的端口是1522(默認(rèn)是1521),如果用戶想利用新的監(jiān)聽(tīng)器進(jìn)行數(shù)據(jù)庫(kù)服務(wù)器的連接,這時(shí)候要重新配置新的網(wǎng)絡(luò)服務(wù)名,使用新的端口1522才能進(jìn)行數(shù)據(jù)庫(kù)連接。監(jiān)聽(tīng)器配置完畢之后會(huì)在服務(wù)管理處新增加一個(gè)57NetManager配置NetManager配置58Oracle網(wǎng)絡(luò)配置概論課件59Oracle網(wǎng)絡(luò)配置概論課件60Oracle網(wǎng)絡(luò)配置概論課件61Oracle網(wǎng)絡(luò)配置概論課件62Oracle網(wǎng)絡(luò)配置概論課件63第三章Oracle網(wǎng)絡(luò)配置本章主要介紹Oracle的網(wǎng)絡(luò)組件與配置工具,通過(guò)學(xué)習(xí)同學(xué)們應(yīng)該熟練利用網(wǎng)絡(luò)配置工具進(jìn)行服務(wù)器端與客戶端的數(shù)據(jù)庫(kù)網(wǎng)絡(luò)連接配置。第三章Oracle網(wǎng)絡(luò)配置本章主要介紹Oracle的網(wǎng)絡(luò)組64本章學(xué)習(xí)目標(biāo):Oracle網(wǎng)絡(luò)服務(wù)組件Oracle網(wǎng)絡(luò)連接的基本概念服務(wù)器端網(wǎng)絡(luò)配置客戶端網(wǎng)絡(luò)配置(本地命名方式)本章學(xué)習(xí)目標(biāo):Oracle網(wǎng)絡(luò)服務(wù)組件651.1Oracle的網(wǎng)絡(luò)服務(wù)組件 為了適應(yīng)大型企業(yè)網(wǎng)絡(luò)應(yīng)用的要求,Oracle網(wǎng)絡(luò)服務(wù)結(jié)構(gòu)在可連接性、可管理性、可擴(kuò)展性以及網(wǎng)絡(luò)安全等方面均提供了完善的解決方案。組件一:OracleNet Oraclenet是同時(shí)駐留在oracle服務(wù)器與客戶端上的一個(gè)軟件層,它負(fù)責(zé)建立與維護(hù)客戶端應(yīng)用程序到數(shù)據(jù)庫(kù)服務(wù)器的連接。1.1Oracle的網(wǎng)絡(luò)服務(wù)組件 為了適應(yīng)大型企業(yè)網(wǎng)絡(luò)應(yīng)66Oraclenet主要由兩層組成:Oraclenet基礎(chǔ)層:
客戶端應(yīng)用程序與oraclenet基礎(chǔ)層進(jìn)行通信,從而建立與維護(hù)到服務(wù)器的連接。Oraclenet基礎(chǔ)層再對(duì)Oracle協(xié)議支持層進(jìn)行調(diào)用,從而利用工業(yè)標(biāo)準(zhǔn)的協(xié)議,如tcp/ip與數(shù)據(jù)庫(kù)服務(wù)器進(jìn)行通信。Oracle協(xié)議支持層:
為oraclenet基礎(chǔ)層提供基于工業(yè)標(biāo)準(zhǔn)協(xié)議的物理連接支持。Oraclenet主要由兩層組成:67組件二:Oraclenet監(jiān)聽(tīng)器
監(jiān)聽(tīng)器是位于服務(wù)器端的一個(gè)后臺(tái)進(jìn)程,它負(fù)責(zé)對(duì)客戶端傳入的連接請(qǐng)求進(jìn)行監(jiān)聽(tīng),并且負(fù)責(zé)對(duì)服務(wù)器端的連接負(fù)荷進(jìn)行調(diào)整。當(dāng)客戶端試圖建立一個(gè)到服務(wù)端的網(wǎng)絡(luò)會(huì)話時(shí),首先是由監(jiān)聽(tīng)器來(lái)處理實(shí)際的網(wǎng)絡(luò)連接請(qǐng)求的。一旦客戶端與服務(wù)器的連接已經(jīng)建立,客戶端和服務(wù)器即可直接通信,不再需要監(jiān)聽(tīng)器的參與。
(下圖所示是監(jiān)聽(tīng)器的工作方式)
組件二:Oraclenet監(jiān)聽(tīng)器
監(jiān)聽(tīng)器是位于服務(wù)器68Oracle網(wǎng)絡(luò)配置概論課件69組件三:網(wǎng)絡(luò)配置工具Oracle同時(shí)提供圖形化界面和命令行方式的網(wǎng)絡(luò)配置工具。包括:Oraclenetconfigurationassistant圖形化工具,通常在完成oracle數(shù)據(jù)庫(kù)服務(wù)器時(shí)會(huì)自動(dòng)啟動(dòng),利用它可以完成基本的網(wǎng)絡(luò)(監(jiān)聽(tīng)器)的配置工作。命令行配置工具LSNRCTL。對(duì)監(jiān)聽(tīng)器進(jìn)行配置、管理與監(jiān)視。Oraclenetmanager圖形化管理工具,提供對(duì)Oracle所有網(wǎng)絡(luò)組件進(jìn)行詳細(xì)配置的集中化管理界面,DBA可對(duì)創(chuàng)建的監(jiān)聽(tīng)器進(jìn)行進(jìn)一步的細(xì)致調(diào)整和配置。組件三:網(wǎng)絡(luò)配置工具70Oracle網(wǎng)絡(luò)配置概論課件711.2Oracle網(wǎng)絡(luò)連接的基本概念數(shù)據(jù)庫(kù)服務(wù)與數(shù)據(jù)庫(kù)實(shí)例標(biāo)識(shí)
對(duì)客戶端來(lái)說(shuō),一個(gè)oracle數(shù)據(jù)庫(kù)就是一個(gè)服務(wù),數(shù)據(jù)庫(kù)以提供服務(wù)的方式為客戶端完成某些特定的工作。基本概念:服務(wù)名(servicename)
服務(wù)名是數(shù)據(jù)庫(kù)的邏輯表示,對(duì)于客戶端來(lái)說(shuō)就是數(shù)據(jù)庫(kù)的存在方式。一個(gè)數(shù)據(jù)庫(kù)可以具有多個(gè)服務(wù)名。在大部分情況下,數(shù)據(jù)庫(kù)的服務(wù)名就是它的全局?jǐn)?shù)據(jù)庫(kù)名(globaldatabasename),即數(shù)據(jù)庫(kù)名加上網(wǎng)絡(luò)域名。1.2Oracle網(wǎng)絡(luò)連接的基本概念數(shù)據(jù)庫(kù)服務(wù)與數(shù)據(jù)庫(kù)實(shí)例72 數(shù)據(jù)庫(kù)服務(wù)名通過(guò)初始化參數(shù)service_names來(lái)指定,service_names參數(shù)默認(rèn)值為全局?jǐn)?shù)據(jù)庫(kù)名(db_name參數(shù)加上db_domain參數(shù)),可以在初始化參數(shù)文件中設(shè)置,例如:service_names=foxconn.gz,foxconn.bj利用連接描述符訪問(wèn)數(shù)據(jù)庫(kù)服務(wù)
為了連接到數(shù)據(jù)庫(kù)服務(wù)器,客戶端必須使用“連接描述符”來(lái)提供數(shù)據(jù)庫(kù)的位置與數(shù)據(jù)庫(kù)服務(wù)名信息?;靖拍?連接描述符(connectdescriptor)
連接描述符是一個(gè)特定網(wǎng)絡(luò)連接的描述格式字符串,在連接描述符中包含了目標(biāo)服務(wù)名以及網(wǎng)絡(luò)路徑的信息。目標(biāo)服務(wù)是數(shù)據(jù)庫(kù)的服務(wù)名,網(wǎng)絡(luò)路徑主要是指數(shù)據(jù)庫(kù)所監(jiān)聽(tīng)的網(wǎng)絡(luò)地址和端口信息等。 數(shù)據(jù)庫(kù)服務(wù)名通過(guò)初始化參數(shù)service_names來(lái)指73例:下面的連接描述符能夠使客戶端連接到一個(gè)服務(wù)名為foxconn.gz的數(shù)據(jù)庫(kù)。
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=sise)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=foxconn.gz)))服務(wù)處理器基本概念:服務(wù)處理器(servicehandler)
在數(shù)據(jù)庫(kù)服務(wù)器中實(shí)際為客戶連接請(qǐng)求提供服務(wù)的進(jìn)程。當(dāng)監(jiān)聽(tīng)器接收到一個(gè)客戶連接請(qǐng)求后,它將自動(dòng)選擇一個(gè)適當(dāng)?shù)姆?wù)處理器,然后將客戶連接請(qǐng)求交給服務(wù)器進(jìn)行處理,此后將由服務(wù)器與客戶端進(jìn)行網(wǎng)絡(luò)通信。例:下面的連接描述符能夠使客戶端連接到一個(gè)服務(wù)名為foxco74Oracle數(shù)據(jù)庫(kù)具有兩種類型的服務(wù)處理器:調(diào)度器(dispatcher):在共享服務(wù)結(jié)構(gòu)中,由調(diào)度器直接與客戶端會(huì)話進(jìn)行通信。調(diào)度器將來(lái)自客戶端的連接請(qǐng)求放入共享池中的請(qǐng)求隊(duì)列中,然后由空閑的共享服務(wù)進(jìn)程對(duì)連接請(qǐng)求進(jìn)行處理,處理的結(jié)果再由調(diào)度器返回給客戶端會(huì)話。因此,共享服務(wù)進(jìn)程并不作為服務(wù)處理器,而是由調(diào)度器作為服務(wù)處理器。專用服務(wù)進(jìn)程(dedicatedserver):如果客戶端需要連接的是一個(gè)專用服務(wù)進(jìn)程,監(jiān)聽(tīng)器將啟動(dòng)一個(gè)專用服務(wù)進(jìn)程,并將連接請(qǐng)求傳遞給這個(gè)專用服務(wù)進(jìn)程。此后,由這個(gè)專用服務(wù)進(jìn)程專門(mén)為客戶端會(huì)話服務(wù)。Oracle數(shù)據(jù)庫(kù)具有兩種類型的服務(wù)處理器:75命名方式(NamingMethod)
客戶端程序?qū)⑦B接標(biāo)識(shí)符轉(zhuǎn)換為連接描述符的一種機(jī)制?;靖拍睿哼B接字符串(connectstring)
客戶端在連接數(shù)據(jù)庫(kù)時(shí)需要提供的信息,包括用戶名、口令以及連接標(biāo)識(shí)符?;靖拍睿哼B接標(biāo)識(shí)符(connectidentifier)
連接標(biāo)識(shí)符是一個(gè)完整的連接描述符,或者是一個(gè)映射到連接描述符的名稱。連接標(biāo)識(shí)符通常也稱為“網(wǎng)絡(luò)服務(wù)名(netservicename)”??蛻舳嗽谶B接數(shù)據(jù)庫(kù)時(shí)需要在連接字符串中包含一個(gè)連接標(biāo)識(shí)符,然后通過(guò)特定的命名方式將連接標(biāo)識(shí)符解析為對(duì)應(yīng)的連接描述符,再利用連接描述符中包含的信息建立到數(shù)據(jù)庫(kù)服務(wù)器的連接。命名方式(NamingMethod)
客戶端程序?qū)⑦B接標(biāo)76客戶端提出連接請(qǐng)求時(shí)需要提供一個(gè)“連接字符串”,形式如下:connectusername/password@connect_identifier連接字符串“@”字符之后的部分是一個(gè)連接標(biāo)識(shí)符。連接標(biāo)識(shí)符實(shí)際上就是連接描述符的簡(jiǎn)寫(xiě)形式??梢栽贎字符之后直接給出完整的連接描述符,這樣過(guò)于繁瑣,例如Connectscott/tiger@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=wah)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=foxconn.gz)))客戶端提出連接請(qǐng)求時(shí)需要提供一個(gè)“連接字符串”,77如果利用連接標(biāo)識(shí)符foxconn來(lái)代替連接描述符,上面的連接字符串可以簡(jiǎn)化為下列形式:connectscott/tiger@foxconn建立連接時(shí)首先將foxconn映射到對(duì)應(yīng)的連接描述符,完成映射所需的信息保存在一個(gè)或多個(gè)資料檔案庫(kù)中或文件,客戶端將通過(guò)特定的“命名方式”來(lái)訪問(wèn)這些資料檔案庫(kù)。如果利用連接標(biāo)識(shí)符foxconn來(lái)代替連接描述符,78利用命名方式建立客戶端會(huì)話的步驟:客戶端在連接字符串中給出一個(gè)連接標(biāo)識(shí)符,提出初始連接請(qǐng)求。連接標(biāo)識(shí)符通過(guò)某種命名方式轉(zhuǎn)換為連接描述符,并將轉(zhuǎn)換后的信息返回給客戶端??蛻舳死眠B接描述符中提供的服務(wù)名與網(wǎng)絡(luò)地址向數(shù)據(jù)庫(kù)提出連接請(qǐng)求。監(jiān)聽(tīng)器收到連接請(qǐng)求后將它傳遞給數(shù)據(jù)庫(kù)服務(wù)器。到數(shù)據(jù)庫(kù)服務(wù)器的連接建立完畢。利用命名方式建立客戶端會(huì)話的步驟:79Oracle網(wǎng)絡(luò)服務(wù)結(jié)構(gòu)提供了如下幾種命名方式:本地命名方式(localnaming)目錄命名方式(directorynaming)oracle命名方式(oraclenaming)主機(jī)命名方式(hostnaming)外部命名方式(externalnaming)
本地命名方式是最常用的一種命名方式,它將連接標(biāo)識(shí)符與它們對(duì)應(yīng)的連接描述符都存儲(chǔ)在本地的名為T(mén)nsnames.ora的配置文件中,客戶端在本地能夠完成連接標(biāo)識(shí)符到連接描述符的映射。Oracle網(wǎng)絡(luò)服務(wù)結(jié)構(gòu)提供了如下幾種命名方式:801.3服務(wù)器端網(wǎng)絡(luò)配置監(jiān)聽(tīng)器的響應(yīng)方式監(jiān)聽(tīng)器的配置靜態(tài)服務(wù)注冊(cè)的配置動(dòng)態(tài)服務(wù)注冊(cè)的配置監(jiān)聽(tīng)器的管理操作1.3服務(wù)器端網(wǎng)絡(luò)配置監(jiān)聽(tīng)器的響應(yīng)方式81監(jiān)聽(tīng)器的響應(yīng)方式監(jiān)聽(tīng)器具有三種不同的相應(yīng)方式,分別是:Spawnandbequeath相應(yīng)方式
監(jiān)聽(tīng)器啟動(dòng)一個(gè)新的服務(wù)處理器,然后將客戶端連接信息交給新的服務(wù)處理器,僅適用于專用服務(wù)進(jìn)程。Directhandoff響應(yīng)方式
監(jiān)聽(tīng)器將客戶端連接信息直接發(fā)送給調(diào)度器,僅適用于共享服務(wù)進(jìn)程。重定向相應(yīng)方式
監(jiān)聽(tīng)器將客戶端連接信息通過(guò)網(wǎng)絡(luò)重定向的方式傳遞給調(diào)度器或?qū)S梅?wù)進(jìn)程。Oracle服務(wù)器有兩種不同類型的服務(wù)處理器:
調(diào)度器(dispatcher)和專用服務(wù)進(jìn)程。監(jiān)聽(tīng)器的響應(yīng)方式82監(jiān)聽(tīng)器的響應(yīng)方式:專用服務(wù)器
-監(jiān)聽(tīng)器啟動(dòng)新的服務(wù)進(jìn)程監(jiān)聽(tīng)器的響應(yīng)方式:專用服務(wù)器
-監(jiān)聽(tīng)器啟動(dòng)新的服務(wù)進(jìn)程83BequeathSession連接過(guò)程詳解:①client使用設(shè)定的協(xié)議向Listener發(fā)送一個(gè)CONNECT包,建立與Listener的連接。②Listener檢查SID是否已經(jīng)被定義。如果已經(jīng)被定義,Listener將fork一個(gè)新的進(jìn)程來(lái)處理此連接。一個(gè)Bequeath連接就在Listener和新的服務(wù)器進(jìn)程之間建立起來(lái),用于傳輸進(jìn)程初始化信息。隨后,Bequeath連接將被關(guān)閉。注意,TCPsockets是被新的服務(wù)器進(jìn)程繼承的。③服務(wù)器進(jìn)程會(huì)給client發(fā)送一個(gè)RESEND包。④一個(gè)新的CONNECT包在此從client發(fā)送到fork產(chǎn)生的服務(wù)器進(jìn)程⑤dedicated服務(wù)器進(jìn)程接到新的連接包,會(huì)返回一個(gè)ACCEPT包給client。BequeathSession連接過(guò)程詳解:①client84監(jiān)聽(tīng)器的響應(yīng)方式:共享或?qū)S梅?wù)器
-監(jiān)聽(tīng)器把請(qǐng)求交調(diào)度器或服務(wù)進(jìn)程監(jiān)聽(tīng)器的響應(yīng)方式:共享或?qū)S梅?wù)器
-監(jiān)聽(tīng)器把請(qǐng)求交調(diào)度器85RedirectSession連接過(guò)程詳解:①client使用設(shè)定的協(xié)議向Listener發(fā)送一個(gè)CONNECT包,建立與Listener的連接。②Listener檢查SID是否定義過(guò)。如果定義過(guò)SID,Listener將產(chǎn)生一個(gè)新的線程或是進(jìn)程給新的連接。一個(gè)IPC連接就被建立在Listener和新進(jìn)程/線程之間。③新進(jìn)程/線程從空閑user定義的ports中選一個(gè)作為新的TCP/IPport,并將該信息反饋給Listener。④Listener將此新的port插入到一個(gè)REDIRECT包中,并將其發(fā)送給client和之前client和Listener之間的TCPsocket。⑤一個(gè)新的TCP連接將建立在REDIRECT包中指定的地址上。并且CONNECT包將發(fā)送到指定的dedicated服務(wù)器進(jìn)程。⑥此時(shí)dedicated服務(wù)器進(jìn)程最終接受連接請(qǐng)求,并發(fā)出ACCEPT包給client。對(duì)于sharedservers模式中,redirect方式建立的connection過(guò)程類似,只是在②中不會(huì)產(chǎn)生新的進(jìn)程或是線程。RedirectSession連接過(guò)程詳解:①client86監(jiān)聽(tīng)器的配置
對(duì)監(jiān)聽(tīng)器的配置是服務(wù)器端網(wǎng)絡(luò)配置的重要內(nèi)容,主要是利用OracleConfigurationAssistant和Oraclenetmanager網(wǎng)絡(luò)配置工具進(jìn)行配置,以及直接編輯Listener.ora配置文件的方法對(duì)監(jiān)聽(tīng)器進(jìn)行配置。對(duì)監(jiān)聽(tīng)器的配置包含如下2個(gè)方面的內(nèi)容:
配置監(jiān)聽(tīng)器所監(jiān)聽(tīng)的協(xié)議和端口。監(jiān)聽(tīng)器的配置
對(duì)監(jiān)聽(tīng)器的配置是服務(wù)器端網(wǎng)絡(luò)配置的重要內(nèi)容,87命名方式的配置:
(配置與移植工具)命名方式的配置:
(配置與移植工具)88Oracle網(wǎng)絡(luò)配置概論課件89Oracle網(wǎng)絡(luò)配置概論課件90Oracle網(wǎng)絡(luò)配置概論課件91Oracle網(wǎng)絡(luò)配置概論課件92
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 藝術(shù)品展覽租賃承包合同
- 2024年版:建筑工程施工分包協(xié)議書(shū)模板
- 醫(yī)療衛(wèi)生經(jīng)費(fèi)管理規(guī)范
- 品牌故事講述櫥窗施工合同
- 2024年度電商企業(yè)文化建設(shè)與推廣合同6篇
- 珠寶加工工廠房屋租賃合同
- 教育培訓(xùn)機(jī)構(gòu)土地租賃協(xié)議
- 設(shè)備典當(dāng)合同樣本
- 醫(yī)療服務(wù)科醫(yī)生勞動(dòng)合同
- 食品安全監(jiān)管投標(biāo)管理辦法
- 汽車(chē)吊起重吊裝專項(xiàng)施工方案
- 運(yùn)動(dòng)解剖學(xué)智慧樹(shù)知到課后章節(jié)答案2023年下云南體育運(yùn)動(dòng)職業(yè)技術(shù)學(xué)院
- 內(nèi)部食堂用餐登記表-
- 北師大版六年級(jí)上冊(cè)第二單元整理與復(fù)習(xí)
- 團(tuán)隊(duì)聯(lián)系人制度模板
- 生命教育三年級(jí)下冊(cè)
- 學(xué)院校食堂餐飲企業(yè)承包經(jīng)營(yíng)退出管理制度
- 國(guó)開(kāi)電大本科《人文英語(yǔ)4》機(jī)考真題(第十五套)
- 三維超聲輸卵管造影的應(yīng)用課件
- 高壓旋噴樁檢測(cè)方案
- Unit1 My classroom Part A Lets spell(說(shuō)課稿)-2022-2023學(xué)年英語(yǔ)四年級(jí)上冊(cè)
評(píng)論
0/150
提交評(píng)論