我刚刚使用 SQL Server 2008 Express 实例设置了一台新的 Windows Server 2008 机器。SQL Browser 服务似乎无法正常工作。在 Management Studio 中,浏览服务器会显示新服务器的主机名,但不会显示实例名称。当您从列表中选择主机名时,它不会连接。但是我可以通过键入主机名\实例名组合来手动连接。
更新1:
- 浏览器服务正在运行,我尝试了几个不同的帐户,包括域管理员,这是一种不好的做法,但我还是尝试了故障排除。
- 我尝试在防火墙上打出适当的孔,并完全关闭防火墙。
- 这是在 Hyper-V、Windows Server 2008 32 位客户机上运行的,它位于 Windows Server 2008 64 位主机上。我之前在同一台主机上做过这个(没有问题),但使用的是 SQL 2008 Standard 而不是 Express。
- 当我在 SQL Server 机器上浏览 SSMS(Express) 中的服务器时,它工作正常并显示整个实例名称。当我使用 SSMS(标准)在远程机器(在同一个 Intranet 上)上浏览它时,它只显示主机名。
更新2:
按照建议按照数据包进行操作,发现以下内容
- 客户端按预期发送了广播,并从同一网络上的其他 SQL Server 接收到正确的响应。
- 服务器收到广播但没有发送响应。
考虑到这些结果,我想知道为什么主机名首先出现在客户端列表中。它根本不应该出现,对吧?
更新 3:
在微软支持的电话上花了一个半小时。我学到了一些东西,但问题还没有解决。有人建议我尝试在同一台机器上安装 SQL Standard 实例。我这样做了,新实例表现出所有相同的症状。主机名仅在浏览列表中显示一次,而不是每个实例一次。
更新4:
多亏了赏金系统,Stackoverflow 为我选择了一个答案,但这个问题没有得到解答。今天我尝试将整个 VM 移动到不同的主机服务器 - 一切都完全相同。主机名仍然出现在浏览列表中,但没有实例名称。
更新5:
确认 Hyper-V 集成服务已安装在来宾 (SQL) 服务器上。