【问题标题】:SQL Server Management Studio connects to Azure SQL Database from Windows 10 but does not connect from VM on Windows Server 2012SQL Server Management Studio 从 Windows 10 连接到 Azure SQL 数据库,但不从 Windows Server 2012 上的 VM 连接
【发布时间】:2017-07-25 10:32:29
【问题描述】:

我使用完全相同的凭据和默认设置从装有 Windows Server 2012 R2 的虚拟机连接到 Azure SQL 数据库,就像我在装有 Windows 10 的笔记本电脑上使用的那样。我使用相同版本的 SQL Server Management 这样做工作室 2014。

我将两台机器的 IP 添加到 Azure SQL DB 防火墙规则中。

VM 上的防火墙已关闭。

我的笔记本电脑与 Win10 完美连接,但每当我在装有 Windows Server 的 VM 上时,我的 SSMS 中都会收到此消息:

Connect to Server

Cannot connect to <my_database>.database.windows.net.


ADDITIONAL INFORMATION:

A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: TCP Provider, error: 0 - No connection could be made because the target machine actively refused it.) (Microsoft SQL Server, Error: 10061)

如需帮助,请点击:http://go.microsoft.com/fwlink?ProdName=Microsoft%20SQL%20Server&EvtSrc=MSSQLServer&EvtID=10061&LinkId=20476


No connection could be made because the target machine actively refused it


我应该如何使用 Windows Server 从我的 VM 连接到该数据库?我在 Google 上搜索了很多,尝试了一些方法,例如为 TCP/UDP/端口的 Windows Server 防火墙添加出站规则,并在 SSMS 中尝试不同的协议,但我现在没有想法。

【问题讨论】:

  • 您能否从 VM ping (ping -a) 您的 SQL Azure 服务器?如果成功,您是否能够使用从 ping 命令收到的 IP 地址远程登录您的 SQL Azure 服务器?远程登录 IP 1433
  • @AlbertoMorillo 如何 ping 我的 SQL Azure 服务器?我只是尝试在命令提示符下运行ping <server>.database.windows.net,但它在两台机器(VM 笔记本电脑)上返回Pinging westeurope1-a.control.database.windows.net [some_IP] with 32 bytes of data:,然后返回Request timed out 4 次 .返回消息的最后一行是Ping statistics for <IP>: Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),

标签: sql-server virtual-machine azure-sql-database ssms windows-server-2012-r2


【解决方案1】:

该问题是由于缺少从 VM 到 SQL Azure 的基本连接造成的。确保虚拟 NIC 卡映射到物理网卡(WIFI 或以太网),并且未配置 NAT、Local Host Only 或 Private Network。

This 文章可能有用。

希望这会有所帮助。

问候,

阿尔贝托·莫里洛

【讨论】:

  • 该链接帮助我使用pingtelnet 命令。所以在做了telnet <IP> 1433之后我收到了这条消息:Connecting To <IP>...Could not open connection to the host, on port 1433: Connect failed
  • VM上的虚拟网卡是否映射到物理机上的物理网卡?请检查虚拟机的设置?您正在使用什么虚拟化软件?虚拟盒子?超V? VMware 播放器/工作站?
  • 我不知道如何回答:“VM上的虚拟网卡是否映射到物理机上的物理网卡?请检查VM的设置?”我正在使用 RDP(用于访问远程桌面的标准 Windows 程序)。
  • 虚拟机上安装了什么软件?您使用 RDP 进行连接,但该虚拟机应安装在虚拟化软件上。用于托管该虚拟机的虚拟化软件的名称是什么?
  • 这个问题刚刚解决。问题是只有入站端口 1433 为该虚拟机打开。打开出站端口 1433 以与我的 Azure 服务器连接后,一切正常。我知道我之前写过 VM 上的防火墙已关闭,但我使用不相关的 wf.msc 命令获得了相关信息(有一些更高级别的防火墙由系统管理员管理)。感谢您的见解!
【解决方案2】:

这个问题已经解决了。问题是只有入站端口 1433 为该虚拟机打开。打开出站端口 1433 以与我的 Azure 服务器连接后,一切正常。

我知道我在问题中写道,VM 上的防火墙已关闭,但我使用 wf.msc 命令获得了与此无关的信息(有一个由系统管理员管理的更高级别的防火墙)。

【讨论】:

  • 我刚刚遇到了同样的问题。您能否详细说明opening the outbound port 1433 for connection with my Azure server 是什么意思?谢谢。
  • 我已经创建了入站和出站规则以允许端口 1433 但仍然无法连接。
  • 使用 fidler 我发现我的虚拟机的所有连接都以 http 407 的代理服务器结束。我相信我可以自己解决这个问题。
猜你喜欢
  • 2015-10-25
  • 1970-01-01
  • 2017-09-14
  • 1970-01-01
  • 2020-10-02
  • 2013-10-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多