无法通过SQL Server Management Studio进行远程连接


13

我已经在1and1.com托管的专用Windows 2008 Server上设置了SQL Server 2008 Express实例。我无法通过Management Studio远程连接到服务器。我已在下面采取了以下步骤,并且没有任何进一步的想法。我已经研究过该网站,无法解决其他任何问题,因此,如果我错过了明显的内容,请原谅我,但我快要疯了。这是低谷。

SQL Server实例正在运行,并且在本地工作时可以完美运行。

在SQL Server Management Studio中,我已选中“允许对此服务器进行远程连接”框

我已从1and1管理面板中删除了所有外部硬件防火墙设置

服务器上的Windows防火墙已被禁用,但只是为了踢我添加了一个入站规则,该规则允许端口1433上的所有连接。

在SQL Native Client配置中,启用了TCP / IP。我还确保带有服务器IP地址的“ IP1”的动态端口为0,但是我删除了它,并在常规TCP端口字段中添加了1433。我还将“ IPALL” TCP端口设置为1433。

在SQL Native Client配置中,SQL Server Browser也正在运行,并且

我也尝试在

设置此值后,我重新启动了SQL Server。

在服务器计算机上执行“ netstat -ano”将返回一个

TCP 0.0.0.0:1433侦听UDP 0.0.0.0:1434侦听

我在本地计算机上进行了端口扫描,结果显示该端口已过滤,而不是侦听。我还尝试从本地计算机上的Management Studio连接,并且抛出连接错误。尝试了以下服务器名称,并在数据库安全性中标记了SQL Server和Windows身份验证。

ip地址\ SQLEXPRESS,1433

ipaddress \ SQLEXPRESS

IP地址

的IP地址,1433

tcp:ipaddress \ SQLEXPRESS

tcp:ipaddress \ SQLEXPRESS,1433


我敢打赌到目前为止,答案中有足够的信息可以完全解决这个问题。让我们知道您被困在哪里。
djangofan 2010年

Answers:


5

我想我可以准确地告诉您问题所在,我花了48个小时来尝试对问题进行排序。在网上找不到任何东西。也恰好与1and1

查看以下设置:

IP安全策略.....

这将打开框......在列表底部附近的包过滤器属性中,有一个框被选中:

“关闭MSDE(TCP / UDP)”(我假设MSDE = Microsoft SQL数据库引擎?)选择它。

这将打开框......编辑规则属性选择(再次)>>'关闭MSDE(TCP / UDP)'按编辑...

IP过滤器列表,然后您将看到端口tcp 1433,udp 1434的列表{这就是我们作为禁止规则而将所有端口列表都关闭了... ..}

我认为从这里要做的是...

关闭该屏幕..IP过滤器屏幕上的列表编辑规则属性中有一个选项卡“过滤器操作”,可以将其从“阻止”更改为“允许”吗?(也许将其更改为允许,将允许我们再次勾选“全部阻止”选项-听起来更安全,但支持人员表示存在已知错误,因此可能无法正常工作)

要么

在数据包过滤器属性上

只需取消选中规则“关闭MSDE(TCP / UDP)”

您可能需要取消选中“全部阻止”规则才能使其运行

这可能会帮助您,但是希望能帮助其他遇到同样问题的人。


1
谢谢!那正是问题所在!您是个天才,感谢您的发布。我会将其标记为答案,但没有任何声望点(仅为了感谢您注册,以示感谢)。

我很惊讶那些窗口设置将SQL 2008称为“ MSDE”。那是sql server express的一个很老的名字。
djangofan

3
嘿,我遇到同样的错误,无法找到可以实际更改这些设置的页面。您能否提供链接或显示设置的图像?
Vivekh

这些属性到底在哪里?
Alisson

5

首先,在Management Studio中,检查管理,SQL Server日志\当前-您要搜索一条消息,说“服务器正在侦听['any'1433]”。如果没有,请启动所有程序,SQL Server 2008,配置工具,SQL Server配置管理器。选择“ SQL Server网络配置\ MSSQLServer \ SQLExpress的协议”。确保启用了TCP / IP。它应该基于netstat -ano的输出,但是...

最重要的是-从远程客户端,您是否尝试过通过

sqlcmd -S1.2.3.4\SQLExpress -U sa -P Password


这就是导致我解决一个非常相似的问题的原因。我们安装的安全包将SQL Server端口随机分配到一个50000高范围的端口。这显示在日志中。一旦我们打开并连接到该端口,我们就不会再猜到了,我们进入了。谢谢。
克里斯·莫斯奇尼

1

您也可以尝试www.firebind.com。它可以测试在朝向1and1的出站方向上是否存在TCP端口1433的任何块。

http://www.firebind.com/1433将立即对其进行测试。


1

从客户端PC到远程SQL Server连接SSMS时,我同样感到头疼。看起来本地防火墙正在阻止入站服务器连接。通过为客户端PC防火墙分配SSMS入站规则解决了问题。我发现这样做的唯一地方是 https://msdn.microsoft.com/zh-cn/library/cc646024(v=sql.120).aspx

1.在具有高级安全性的Windows防火墙中,在左窗格中,右键单击“入站规则”,然后在操作窗格中选择“新建规则”。

2.在“规则类型”对话框中,选择“程序”,然后单击“下一步”。

3.在“程序”对话框中,选择“此程序路径”,然后对于SQL Server Management Studio输入ssms.exe的完整路径。默认情况下,它安装在C:\ Program Files(x86)\ Microsoft SQL Server \ 120 \ Tools \ Binn \ Management Studio \ ssms.exe中

这对我有帮助。希望你也一样。


0

您是否可以从工作站远程登录到端口1433?这是确定该端口上是否具有网络连接的简便方法。可能是您的提供商在沿线某处阻塞了与其设备的连接。

您认为端口已被过滤的事实使我认为它们正在阻塞某处。您可能需要与他们进行检查,因为他们可能不想允许从远程连接SQL Server,或者它们阻止了知名端口。tcp / 1433是一个著名的端口,并且有一些与SQL Server相关的蠕虫直接将其作为目标。


0

在服务器计算机上键入“ netstat -an”,以查看端口1433是否实际上在侦听。此外,请确保已启用您正在使用的用户帐户,并且还启用了“ SQL身份验证”。还要注意“ SQL Configuration Manager”设置。另外,在您的Windows防火墙中允许端口1433作为例外。基本上,如果您没有告诉SQL Server允许远程连接,那么它就不会进行。


如问题中所述,“在服务器计算机上执行“ netstat -ano”将返回TCP 0.0.0.0:1433侦听UDP 0.0.0.0:1434侦听”如问题中所述,“在SQL Server Management Studio中,我有。选中该复选框“允许远程连接到这台服务器”正如在问题中提到,启用的SQL配置管理器设置如问题提到,Windows防火墙被禁用。
FAtBalloon

如果它是远程SQL实例,那么您如何管理netstat命令?我只是说似乎您将远程实例与本地实例混淆了。
djangofan 2010年

0

SQL Server代理是否正在运行?如果不是,您具有哪个版本的SQL Server?

查看不同版本之间的差异。
http://www.microsoft.com/sqlserver/2008/en/us/editions-compare.aspx

如果您具有Express Edition或Web Edition,则它们将被禁用并且无法运行。


如前所述,SQL Server 2008 Express是该版本。SQL Server代理不是运行远程连接所必需的。
FAtBalloon 2010年

如果您需要此功能,则可悲的是必须升级。
Embreau 2010年

这不是真的。远程连接在2008

0

疯狂的主意,您的用户名和密码正确吗?您是使用Windows身份验证还是SQL Server登录?


0

在SQL-Express上寻找连接性。激活TCP / IP。确保在SQL-Express上将端口配置为1433。您是否安装了命名实例?

该端口必须以1and1转发到您的SQL Server实例。

顺便检查一下您的站点有关端口1433的信息。如果您的提供商将其阻止,则您没有机会。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.