sql-server - SSMS - 无法使用本地计算机上的 SSMS 连接到 Azure VM 上的 SQL Server 2017 Express

标签 sql-server azure virtual-machine ssms

我们有一个带有 SQL Server 2017 Express 的 Azure 虚拟机。
但是,我无法使用 SSMS 从本地计算机连接到 SQL Server。

尝试连接 SSMS 时会引发错误消息:
“无法连接到(VM 名称):(端口号)
-> 建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。”

SQL Server 2017 Express 已使用从 https://www.microsoft.com/en-us/sql-server/sql-server-editions-express 下载的 native 安装在 VM 上。 .
SQL Server 2017 Express 尚未使用 Azure 门户进行设置,如以下链接中的示例所示:https://docs.microsoft.com/en-us/azure/virtual-machines/windows/sql/quickstart-sql-vm-create-portal

我已经尝试了以下指南,但没有运气
- https://logicalread.com/connect-windows-azure-vm-using-ssms-tl01/#.XF1dIjNKiUl
- https://www.youtube.com/watch?v=5UkHYNwUtCo
- https://blogs.msdn.microsoft.com/sqlexpress/2005/05/05/how-to-configure-express-to-accept-remote-connections/
- https://docs.microsoft.com/en-us/azure/virtual-machines/windows/sql/virtual-machines-windows-sql-connect
- https://social.technet.microsoft.com/wiki/contents/articles/36674.access-azure-vm-sql-server-outside-of-network.aspx

我做了以下
- 具有高级安全性的 Windows 防火墙
--> 添加防火墙入站规则打开端口 1433 & 49170
- SQL Server 配置管理器
-> SQL Server 网络配置
--> SQLEXPRESS 的协议(protocol)
---> TCP/IP,设置为“启用”
----> TCP/IP 属性,IP 地址,IPAll,“TCP 端口”设置为 49170
----> TCP/IP 属性、IP 地址、IPAll、“TCP 动态端口”设为空白
-> SQL 服务器服务
--> SQL Server (SQLEXPRESS),重启服务

但是,在 SSMS 中,我的本地计算机无法连接到 Azure 虚拟机上的 SQL Server。

我已经尝试在 SQL Server 配置管理器中启动 SQL Browser 服务,如建议的那样
Cannot connect to Azure VM with SSMS

我在本地计算机上使用 Microsoft SQL Server Management Studio 2016。

为什么我无法使用 SSMS 从本地计算机登录 Azure VM 的 SQL Server?
是否有什么东西阻止了 SSMS 的连接?

我还尝试使用命令提示符从本地计算机 ping 虚拟机,但没有成功。
即使我暂时禁用了 Windows 防火墙,我也无法 ping 我的 VM。
在下面的文章中,它说 Azure 负载均衡器可能会阻塞信号 https://www.petri.com/how-to-remotely-ping-microsoft-azure-vms
这是否与阻止从我的本地计算机的 SSMS 访问虚拟机的 SQL Server 的问题相同?

最佳答案

我一直有同样的问题,这对我有用。检查以确保配置中的端口值不为空。当我添加它时,我能够连接。请参阅随附的屏幕截图。

enter image description here

关于sql-server - SSMS - 无法使用本地计算机上的 SSMS 连接到 Azure VM 上的 SQL Server 2017 Express,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54593718/

相关文章:

sql-server - 使用 Microsoft SQL Server Management Studio 的西里尔字母

sql - 如何在 SQL 中获取特定列的分组输出,如下所示?

sql - 是否有任何 "reverse"ON DELETE CASCADE 选项?

azure - 在 Terraform 中通过 WinRM 连接到远程主机失败

azure - 使用托管标识将 Azure SQL 数据库链接到数据工厂

在 openstack vm 中使用 ssl 的 apache

linux - 从 VHD 创建 Azure ARM64 镜像

c# - 存储过程和 SqlCommand 超时

azure - Visual Studio 2017 Azure Cloud 快速入门项目模板丢失?

virtual-machine - 将 VirtualBox vhd 移动到另一个位置会导致 vhd 出现 uuid 问题