設定 SQL Server 在特定 TCP 通訊埠上接聽
適用於:SQL Server
此文章描述如何使用 SQL Server 組態管理員來設定 SQL Server 資料庫引擎的執行個體在特定固定連接埠上接聽。 若啟用,SQL Server 資料庫引擎的預設執行個體會接聽 TCP 通訊埠 1433。 針對動態連接埠設定資料庫引擎和 SQL Server Compact 的具名執行個體。 這表示,當 SQL Server 服務啟動時,會選取可用的連接埠。 透過防火牆連接到具名執行個體時,設定資料庫引擎接聽特定連接埠,如此才能在防火牆中開啟適當的連接埠。
注意
因為連接埠 1433 是 SQL Server 的已知標準,所以某些組織會指定 SQL Server 連接埠編號應該變更以加強安全性。 這可能有助於某些環境中。 不過,TCP/IP 架構允許連接埠掃描器查詢開放的連接埠,因此變更連接埠編號並非強固的安全性量值。
如需預設 Windows 防火牆設定的詳細資訊以及影響資料庫引擎、Analysis Services、Reporting Services 和 Integration Services 之 TCP 連接埠的描述,請參閱設定 Windows 防火牆以允許 SQL Server 存取。
提示
選取通訊埠編號時,請參閱 https://www.iana.org/assignments/port-numbers,以取得指派給特定應用程式的通訊埠編號清單。 選取未指派的通訊埠編號。 如需詳細資訊,請參閱 自 Windows Vista 和 Windows Server 2008 以來,TCP/IP 的預設動態埠範圍已變更 (部分為機器翻譯)。
備註
資料庫引擎會在重新啟動之後開始接聽新的通訊埠。 不過,SQL Server Browser 服務會監視登錄,並在組態變更時回報新的連接埠編號,即使資料庫引擎可能不會用到亦然。 重新啟動資料庫引擎可確保一致性並避免連接失敗。
使用 SQL Server 組態管理員
為 SQL Server 資料庫引擎指派 TCP/IP 連接埠編號
在 SQL Server 組態管理員的主控台窗格中,展開 [SQL Server 網路組態],選擇 [<執行個體名稱>的通訊協定],然後在正確窗格中按兩下 [TCP/IP]。
注意
如果您無法開啟 SQL Server 組態管理員,請參閱 SQL Server 組態管理員。
在 [TCP/IP 內容] 對話方塊的 [IP 位址] 索引標籤上會出現數個 IP 位址,這些 IP 位址的格式是 IP1、IP2 到 IPAll。 其中一個是供回送介面卡的 IP 位址
127.0.0.1
使用。 同時會出現額外的 IP 位址代表電腦上的每個 IP 位址。 (您可能會看到 IP 第 4 版和 IP 第 6 版位址)。以滑鼠右鍵按一下每個位址,然後選取 [屬性],識別要設定的 IP 位址。如果 [TCP 動態通訊埠] 對話方塊包含
0
,代表資料庫引擎正在接聽動態通訊埠,請將0
刪除。在 [IP] n [屬性] 區域方塊的 [TCP 通訊埠] 方塊,輸入您要此 IP 位址接聽的連接埠編號,然後選取 [確定]。 請以逗號分隔來指定多個連接埠。 選取 [確定]。
如果 [通訊協定] 索引標籤上的 [全部接聽] 設定設為 [是],則只會使用 [IPAll] 區段下的 [TCP 通訊埠] 和 [TCP 動態連接埠] 值,而完全略過個別 [IPn] 區段。 如果 [全部接聽] 設定設為 [否],則會略過 [IPAll] 區段下的 [TCP 通訊埠] 和 [TCP 動態連接埠] 設定,而改用個別 [IPn] 區段上的 [TCP 通訊埠]、[TCP 動態連接埠] 和 [已啟用] 設定。
每個 [IPn] 區段都有一個預設值為「否」的 [已啟用] 設定,導致 SQL Serve 略過此 IP 位址,即使已定義連接埠也是如此。
在主控台窗格中,選擇 [SQL Server 服務]。
在詳細資料窗格中,以滑鼠右鍵按一下 [SQL Server (<執行個體名稱>)],然後選擇 [重新啟動],以停止並重新啟動 SQL Server。
連線
設定 SQL Server 接聽特定連接埠之後,有三種方式以用戶端應用程式連接到特定連接埠:
- 在伺服器上執行 SQL Server Browser 服務,依名稱連線至資料庫引擎執行個體。
- 在用戶端上建立別名,指定通訊埠編號。
- 設定用戶端使用自訂連接字串進行連接。