對SQL Server 瀏覽器的實際工作原理描述
以下的文章主要向大家描述的是SQL Server 瀏覽器的實際工作原理,我們大家都知道SQL Server Browser 作為 Windows 操作系統(tǒng)的服務(wù)在服務(wù)器上運行。SQL Server Browser 偵聽對 SQL Server 資源的傳入請求,并提供計算機上安裝的 SQL Server 實例的相關(guān)信息。
SQL Server Browser 可用于執(zhí)行下列三種操作:
瀏覽可用服務(wù)器
連接到正確的服務(wù)器實例
連接到專用管理員連接 (DAC) 端點
SQL Server Browser 服務(wù) (sqlbrowser) 為數(shù)據(jù)庫引擎的每個實例提供實例名稱和版本號。SQL Server Browser 隨 SQL Server 2005 一起安裝,為該計算機上運行的早期版本的 SQL Server(從 SQL Server 7.0 開始)提供幫助。
默認(rèn)情況下,不為 SQL Server Express 啟用 SQL Server Browser 服務(wù)。SQL Server Browser 可以使用外圍應(yīng)用配置器工具進行初始配置,并使用 SQL Server 配置管理器進行管理。
背景
在 SQL Server 2000 之前,一臺計算機上只能安裝一個 SQL Server 實例。SQL Server 偵聽 1433 端口傳入的請求,此端口由官方的 Internet 號碼分配機構(gòu) (IANA) 分配給 SQL Server。只有一個 SQL Server 實例可以使用端口,因此當(dāng) SQL Server 2000 引入對 SQL Server 多個實例的支持時,便開發(fā)了 SQL Server 解析協(xié)議 (SSRP),用于偵聽 1434 端口。此偵聽器服務(wù)用已安裝的實例的名稱以及實例使用的端口或命名管道來響應(yīng)客戶端請求。
為解決 SSRP 系統(tǒng)的限制,SQL Server 2005 提供了 SQL Server Browser 服務(wù)來替代 SSRP。
SQL Server 瀏覽器工作原理
啟動一個 SQL Server 實例后,如果為 SQL Server 啟用了 TCP/IP 或 VIA 協(xié)議,服務(wù)器將被分配一個 TCP/IP 端口。如果啟用了命名管道協(xié)議,SQL Server 將偵聽特定的命名管道。該特定實例將使用此端口或管道與客戶端應(yīng)用程序交換數(shù)據(jù)。
在安裝過程中,1433 端口和管道 sqlquery 將分配給默認(rèn)實例,但服務(wù)器管理員可以隨后使用 SQL Server 配置管理器進行更改。由于只有一個 SQL Server 實例可以使用端口或管道,因此,會將不同的端口號和管道名稱分配給命名實例,包括 SQL Server Express。
默認(rèn)情況下,命名實例被配置為使用動態(tài)端口,因此在啟動 SQL Server 時分配可用的端口。可以為 SQL Server 實例分配特定端口。連接時,客戶端可以指定所需端口。但是如果端口是動態(tài)分配的,端口號可能會在重新啟動 SQL Server 時被更改,因此正確的端口號對于客戶端來說是不確定的。
啟動后,SQL Server Browser 將啟動并使用 UDP 1434 端口。SQL Server Browser 將讀取注冊表,識別計算機上的所有 SQL Server 實例,并注明它們使用的端口和命名管道。當(dāng)一臺服務(wù)器具有兩個或多個網(wǎng)卡時,SQL Server Browser 會為 SQL Server 返回啟用的所有端口。SQL Server 2005 和 SQL Server Browser 支持 ipv6 和 ipv4。
如果 SQL Server 2000 和 SQL Server 2005 客戶端請求 SQL Server 資源,客戶端網(wǎng)絡(luò)庫將使用 1434 端口向服務(wù)器發(fā)送一條 UDP 消息。SQL Server Browser 將用請求的實例的 TCP/IP 端口或命名管道做出響應(yīng)。然后,客戶端應(yīng)用程序中的網(wǎng)絡(luò)庫將使用所需實例的端口或命名管道向服務(wù)器發(fā)送請求來完成連接。
以上的相關(guān)內(nèi)容就是對SQL Server 瀏覽器的工作原理的介紹,望你能有所收獲。
【編輯推薦】