3

我有以下配置:

  • 带有 SQL Server 2008 Express SP1 和 SQL Server Management Studio 的主机 Windows Vista Home Premium SP2。
  • 一台装有 Windows Vista Ultimate、Visual Studio 2008 Express 和 Visual Studio 2010 Beta 1 的 Virtual PC 2007 机器。

在主机上使用 SP1,在安装 Vista SP2 和 SQL Server SP1 之前,我可以从虚拟机连接到 Visual Studio 2008 和 2010 的 SQLEXPRESS 实例。我现在不可以。

该实例被配置为允许远程连接。物理机和虚拟机都可以在网上互相看到并响应 ping。SQL Server Browser 服务正在运行,并且在 SQL Server 配置管理器中启用了所有协议。

我尝试重新安装 SQL Server,但仍然无法连接。现在,在 VS 的服务器名称下拉列表中,我只能看到 MACHINENAME,我曾经在其中看到 MACHINENAME\SQLEXPRESS,当我尝试连接时,我收到以下消息:

建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。(提供者:SQL 网络接口,错误:26 – 错误定位服务器/指定实例)

我不知道我错过了什么。有没有人遇到过这个问题?

编辑:

当然,我认为这更多是与网络相关的问题。我检查了主机 SO 上的防火墙。SQL Server Browser 服务不接收任何连接。防火墙报告的连接中允许和拒绝都是 0。该服务正在正确侦听 UDP 端口 1434。

我还尝试访问主机 IIS 上的 Web 应用程序,但没有得到响应。但是我可以从虚拟机访问 Internet。

非常感谢

4

2 回答 2

2

我终于找到了我所缺少的。我进入网络共享中心并将我的网络配置为公共而不是私有。我在主机和虚拟机上都这样做了,现在通信又回来了。我不确定为什么会这样,因为公共网络配置应该更具限制性。

谢谢大家的建议。

问候

于 2009-09-04T17:48:23.707 回答
0

重装的时候,是不是先卸载SQL再重装?可能在该过程中,您卸载了命名实例 (MACHINE_NAME\SQLEXPRESS)(在 Windows 服务中被视为 SQL Server (SQLEXPRESS))并安装了默认实例 (MACHINE_NAME)(在 Windows 服务中被视为 MSSQLSERVER)。

我还观察到,如果安装了 SQL Express 的默认实例并且在其上运行 SQL Service Pack 安装程序,那么如果不小心,Service Pack 安装程序将安装命名实例,而不是升级默认实例。

于 2009-09-01T17:02:53.190 回答