我很难与使用SQL Server 2014 Express运行Windows Server 2012的云VM上运行的数据库建立远程连接。
我可以使用SQL Server Management Studio在本地连接机器(thorugh RDP)。我还右键单击了SQL Managment Studio,并确保允许远程连接。
正如我所提到的,服务器正在运行plesk,所以我启用了以下防火墙规则;
MS SQL over TCP协议允许来自所有端口的传入连接 1433 / TCP,个人资料:域名,私人,公共
和
MS SQL Probe Allow 来自端口1434 / UDP,配置文件的所有传入连接: 域,私有,公共
我已经使用Windows防火墙对其进行了双重检查,它似乎允许连接通过。
接下来,我(通过SQL配置管理器)完成了以下操作;
SQL Server网络配置 - > MSSQLSERVER的协议
启用TCP / IP 启用命名管道
在TCP / IP属性下,我启用并激活了IP2,IP地址是服务器的公共静态IP点,TCP动态端口为空,TCP端口为1433.
IPALL的TCP动态端口为空,TCP端口为1433.
我已重新启动SQL Services,并且该实例正在以MSSQLSERVER身份运行。
然后我尝试通过SQL Management Studio(和VS 2013)远程连接。
通过SQL Management Studio,我收到以下错误;
发生网络相关或特定于实例的错误 建立与SQL Server的连接。找不到服务器或 无法访问。验证实例名称是否正确 SQL Server配置为允许远程连接。 (提供者:命名 管道提供程序,错误:40 - 无法打开到SQL Server的连接) (Microsfot SQL Server,错误:53)。
(我使用服务器IP和服务器名称,即我没有在此指定实例或端口,并且使用与本地登录时相同的凭据)。
答案 0 :(得分:2)
我遇到了和你刚才一样的问题。我通过在具有高级安全性的Windows防火墙中的现有Plesk规则之上添加新的防火墙规则来解决它。
出于测试目的,当我第一次设置规则时,我并没有限制IP访问;当我远程访问SQL Server时,允许验证规则是否已正确设置。之后我将其限制为远程IP。我正在使用Windows Server 2008,但它也适用于2012年。