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

时间:2019-02-08 13:42:46

标签: sql-server azure virtual-machine ssms

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

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

使用https://www.microsoft.com/en-us/sql-server/sql-server-editions-express的下载,SQL Server 2017 Express已本地安装在VM上。
尚未使用通过Azure门户的安装程序来设置SQL Server 2017 Express,如以下链接中的示例所示: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的协议
---> TCP / IP,设置为“启用”
----> TCP / IP属性,IP地址,IPAll,“ TCP端口”设置为49170
----> TCP / IP属性,IP地址,IPAll,“ TCP动态端口”留为空白
-> SQL Server服务
-> SQL Server(SQLEXPRESS),重新启动服务

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

我已尝试按照SQL Server Configuration Manager中的建议启动SQL Browser服务。 Cannot connect to Azure VM with SSMS

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

为什么不能使用SSMS从本地计算机登录Azure VM的SQL Server?
有什么阻止来自SSMS的连接吗?

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

2 个答案:

答案 0 :(得分:0)

您提到您已经在Windows防火墙中打开了内容,但是是否打开了Azure网络安全组中的任何端口?默认情况下,当创建VM时,Azure将创建NSG,您需要转到门户并添加NSG规则以允许端口1433。

此外,请注意,由于ICMP被禁用,您将无法从外部ping Azure VM。

答案 1 :(得分:0)

我遇到了同样的问题,这对我有用。检查以确保配置中的端口值不为空。添加后,我就可以连接了。查看所附的屏幕截图。

enter image description here