SQL Server中的客戶端網絡庫可以使客戶端應用程序與SQL Server系統進行連接溝通。本文為大家簡 單介紹一些關於SQL Server 2005客戶端網絡庫及其使用的知識,包括四個方面:共享內存、虛擬接口適 配器、命名管道和TCP/IP協議。
在SQL Server中,客戶端網絡庫(Client network library)至關重要,是客戶端應用程序和SQL Server系統之間連接溝通的橋梁。客戶端必須使用和它需要連接的SQL Server系統相同的客戶端網絡庫。 當客戶端通過局域網或廣域網進行連接時,客戶端網絡庫會在合適的網絡協議下壓縮 SQL Server的表格 格式數據流(Tabular Data Stream,TDS)。(TDS是SQL Server用來接受網絡查詢請求病向客戶端應用程序 放回查詢結果的協議)。對於本地連接來說,可以使用高性能的共享內存網絡庫。要想使用客戶端網絡庫 ,首先打開“SQL Server配置管理器”,點擊“SQL Native Client配置”,然後 選擇“客戶端協議”節點,就會出現下述標題所示的SQL Server 2005客戶端網絡庫的網絡協 議內容。
共享內存(Shared Memory)
共享內存客戶端網絡庫可以用來連接本地服務器上運行的應用程序和SQL Server引擎。在SQL Server Express中,這是默認的配置,通過系統的網絡堆棧使用“內存內”管道直接進行通信,所以 能夠以最快的速度連接到SQL Server。共享內存是最簡單的協議,沒有什麼可設置的選項。
虛擬接口適配器(Virtual Interface Adapter,VIA)
虛擬接口適配器協議是為兩個系統之間進行高性能專用連接而設的協議。VIA提供了內存映射的通信模 式,通過操作系統網絡層達到最佳性能。對 SQL Server來說,當你想要實施高性能集群時,通常會使用 VIA客戶端網絡庫。默認情況下,VIA使用1433端口,不過這個配置是可以重新設置的。
命名管道(Named Pipes)
這個客戶端網絡庫最適合用於局域網連接。在局域網環境下,其性能和TCP/IP客戶端網絡庫不相上下 。默認情況下,SQL Server會聽命於命名管道\pipe\sql\query進行客戶端連接,不過可以改變默認管道 。當你使用句點來指定SQL Server系統時(例如:\SQLExpress),默認設置為使用命名管道連接。
TCP/IP協議
無論是本地網、局域網還是廣域網連接,使用的最廣泛的客戶端協議是TCP/IP,不過TCP/IP協議最適 用於局域網和廣域網連接。在廣域網的環境下,TCP/IP協議在性能上優於命名管道協議。正如其名稱所示 ,這個客戶端網絡庫必須在TCP/IP協議下使用。默認情況下,它使用1433端口,不過這個配置也是可以重 設的。