適用於:SQL Server
本文說明如何使用 SQL Server Configuration Manager 在 SQL Server 中隱藏資料庫引擎的執行個體。 SQL Server 使用 SQL Server Browser 服務來列舉電腦上所安裝資料庫引擎的執行個體。
此選項可讓用戶端應用程式瀏覽伺服器,並協助用戶端區分相同電腦上的資料庫引擎多個執行個體。 您可以使用下列步驟,防止 SQL Server Browser 服務將資料庫引擎的執行個體暴露給嘗試利用 [瀏覽] 按鈕尋找該執行個體的用戶端。
使用 SQL Server 組態管理員
在 [SQL Server 組態管理員]中展開 [SQL Server 網路設定],以滑鼠右鍵按一下 [伺服器執行個體的通訊協定]<>,然後選取 [屬性]。
在 [旗標 ] 索引標籤的 [HideInstance ] 方塊中,選取 [ 是],然後選取 [ 確定 ] 以關閉對話方塊。 此變更在新連接時會立即生效。
備註
如果您隱藏具名實例,則需要在連接字串中提供連接埠號碼,才能連線到隱藏的實例,即使瀏覽器服務正在執行中也一樣。 我們建議您為具名隱藏執行個體使用靜態連接埠,而非動態連接埠。
如需詳細資訊,請參閱 設定 SQL Server 以接聽特定 TCP 埠。
叢集
如果您隱藏叢集執行個體或可用性群組名稱,叢集服務可能無法連線到 SQL Server。 這會導致叢集執行個體 IsAlive 檢查失敗,且 SQL Server 離線。
若要避免這種情況,請在叢集執行個體的所有節點或裝載可用性群組複本的所有執行個體中建立別名,以反映您為執行個體設定的靜態連接埠。 舉例而言,在有兩個複本的可用性群組中,在節點一上為節點二的執行個體建立一個別名,例如 node-two\instancename。 在節點 2 上,建立稱為 node-one\instancename 的別名。 要確保故障轉移成功,需要別名。
如需詳細資訊,請參閱 建立或刪除伺服器別名以供用戶端使用。
如果您隱藏叢集具名執行個體,如果登錄機碼 (LastConnect) 的埠與 SQL Server 接聽的埠不同,叢集HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SNI11.0\LastConnect服務可能無法連線到 SQL Server。
如果叢集服務無法連線到 SQL Server,您可能會看到類似下列的錯誤:
Event ID: 1001: Event Name: Failover clustering resource deadlock.