我在 Windows VM 上有一个 Microsoft SQL Server 数据库,目前为 提供数据server.fq.d.n,<port-number>
。用户可以使用此<fqdn>,<port>
地址顺利连接到此数据库,但其中一些用户希望使用仅是 fqdn 的别名进行连接没有端口号alias.fq.d.n
。
我该如何做这件事?
我的数据库实例名为xyz-services\foo
。
答案1
MS SQL 提供SQL Server 浏览器服务,允许客户端查询服务器并请求托管数据库的 SQL Server 实例的端口。
设置 SQL 服务器时,此服务默认启用,因此您的客户端应该可以使用它。如果您的客户端无法访问它,请检查该服务是否正在运行以及您的防火墙是否正常。
无论如何都应该使用这个,因为默认情况下 SQL Server 实例的端口不是固定的。它是在启动时确定的,如果一台主机上有多个 SQL Server 实例,则不能保证特定的 SQL Server 实例始终具有相同的端口(只要您不将其设置为固定值)。
答案2
据我所知,您不能省略 TCP 连接字符串中的端口号。因此,当应使用 FQDN 建立连接时,您有提供端口号。
答案3
您可以在客户端上使用连接别名。
https://blogs.msdn.microsoft.com/sql_protocols/2007/01/07/connection-alias/
这是通过 SQL Server 配置管理器或直接在注册表中进行配置的。文章提到 c:\windows\system32\cliconfig.exe,但它在我的 Windows 10 笔记本电脑上并不存在。