| title | Hide an Instance of SQL Server Database Engine | ||
|---|---|---|---|
| description | Find out how to hide an instance of the SQL Server Database Engine. Client computers can't use the SQL Server Browser service to locate hidden instances. | ||
| author | rwestMSFT | ||
| ms.author | randolphwest | ||
| ms.date | 10/20/2025 | ||
| ms.service | sql | ||
| ms.subservice | configuration | ||
| ms.topic | how-to | ||
| helpviewer_keywords |
|
[!INCLUDE SQL Server]
This article describes how to hide an instance of the [!INCLUDE ssDE] in [!INCLUDE ssnoversion] by using SQL Server Configuration Manager. [!INCLUDE ssNoVersion] uses the [!INCLUDE ssNoVersion] Browser service to enumerate instances of the [!INCLUDE ssDE] installed on the computer.
This option enables client applications to browse for a server, and helps clients distinguish between multiple instances of the [!INCLUDE ssDE] on the same computer. You can use the following procedure to prevent the SQL Server Browser service from exposing an instance of the [!INCLUDE ssDE] to client computers that try to locate the instance by using the Browse button.
-
In SQL Server Configuration Manager, expand SQL Server Network Configuration, right-click Protocols for <server instance>, and then select Properties.
-
On the Flags tab, in the HideInstance box, select Yes, and then select OK to close the dialog box. The change takes effect immediately for new connections.
If you hide a named instance, you need to provide the port number in the connection string to connect to the hidden instance, even if the browser service is running. We recommend that you use a static port instead of a dynamic port for the named hidden instance.
For more information, see Configure SQL Server to listen on a specific TCP port.
If you hide a clustered instance or availability group name, cluster service might not be able to connect to [!INCLUDE ssNoVersion]. This causes the cluster instance IsAlive check to fail and [!INCLUDE ssNoVersion] goes offline.
To avoid this scenario, create an alias in all the nodes of the clustered instance or all instances that host availability group replicas to reflect the static port that you configured for the instance. For example, on an availability group with two replicas, on node-one, create an alias for the node-two instance, like node-two\instancename. On node-two, create an alias called node-one\instancename. The aliases are required for successful failover.
For more information, see Create or delete a server alias for use by a client.
If you hide a clustered named instance, cluster service might not be able to connect to [!INCLUDE ssNoVersion] if the LastConnect registry key (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SNI11.0\LastConnect) has a different port than the port that [!INCLUDE ssNoVersion] is listening on.
If the cluster service is unable to make a connection to the [!INCLUDE ssNoVersion], you might see an error similar to:
Event ID: 1001: Event Name: Failover clustering resource deadlock.