SQL Server在安裝到伺服器上後,由於出於伺服器安全的需要,所以需要屏蔽掉所有不使用的連接埠,只開放必須使用的連接埠。下面就來介紹下SQL Server 2008中使用的連接埠有哪些:
首先,最常用最常見的就是1433連接埠。這個是資料庫引擎的連接埠,如果我們要遠端連線資料庫引擎,那麼就需要開啟該連接埠。這個連接埠是可以修改的,在“SQL Server組態管理員”中切換到“XXX的協議”裡面選擇,TCP/IP協議屬性中可以設定TCP連接埠。:
SSIS要調用DCOM協議,所以在使用SSIS的時候需要開啟135連接埠,而且這個連接埠是不能更改的。只有開啟 TCP 通訊埠 135 才能訪問服務控制管理員 (SCM)。SCM 執行以下任務:啟動和停止 Integration Services 服務,以及將控制請求傳輸到啟動並執行服務。
接下來再說一下SSAS,SSAS預設執行個體使用的是2383連接埠,如果是具名執行個體,那麼每個執行個體都會有一個管理員指定的連接埠,這個連接埠也可以是動態分配的,由於網路安全的需要,強烈建議不要使用動態分配連接埠的方案。如果是動態分配的連接埠,用戶端在串連伺服器時,將會串連伺服器的2382連接埠,這個連接埠是SQL Server Browser使用的連接埠。SQL Server Browser再通過2382連接埠告訴用戶端,需要串連的具名執行個體的實際連接埠號碼。(這是官方的說法,但是我並不確定這裡是要2382連接埠,不過接下來提到的UDP1434連接埠是肯定有用的。)另外SQL Server Browser需要使用到UDP的1434連接埠,所以如果需要使用該服務的話,必須將UDP1434開啟。修改SSAS的連接埠,需要先開啟SSAS服務,然後使用SSMS串連到SSAS中,在物件總管中右擊執行個體,選擇屬性,彈出分析服務屬性視窗,設定Port屬性為需要的連接埠,預設值是0,也就是沒有設定的意思,然後重啟SSAS服務即可。
重啟後,SSMS擷取其他用戶端串連SSAS的話,那麼就需要使用“主機名稱:連接埠”的方式作為串連主機,而如果是資料庫引擎的話,那麼是使用“主機名稱,連接埠”的格式,這兩個是有所區別的。
報表格服務是通過Web的方式提供服務的,所以預設情況下報表格服務使用的是80連接埠,當然使用者也可以修改報告服務的連接埠,在報表格服務組態管理員中修改Web服務和報表管理器的連接埠,:
SSB的連接埠配置,SSB如果涉及到電腦之間通過網路進行通訊,那麼就需要設定端點(EndPoint),在設定SSB的端點時,就需要制定偵聽的連接埠,比如我們建立這樣一個端點:
USE master;GOCREATE ENDPOINT BrokerEndpoint STATE = STARTED AS TCP ( LISTENER_PORT = 4037 ) FOR SERVICE_BROKER ( AUTHENTICATION = WINDOWS ) ;GO
那麼我們就需要開發4037連接埠。
同樣的道理,如果我們要設定資料庫鏡像、SOAP訪問等,那麼也需要建立端點,同時開通端點中的連接埠。
除了以上介紹的連接埠外,如果要做資料庫複寫之類的,需要在資料庫伺服器上設定共用資料夾以方便多台伺服器的資料轉送的話,那麼就還需要開通Windows共用的連接埠,如137、138、139、445等。
以上介紹了這麼多服務和連接埠,這需要根據實際的需要來設定,出於安全考慮可以將預設連接埠該為自己的連接埠,而且SQL Server Browser服務不要開啟。