远程连接 sql server 不工作,但如果防火墙禁用它呢?

use*_*655 5 windows-server-2008 firewall sql sql-server sql-server-2008

我在 Windows 2008 服务器上设置了 sql server express 2008。我已经完成了 sql 中的所有标准内容以允许远程连接。奇怪的是,如果我禁用 Windows 2008 服务器防火墙 .. 它的工作原理。

我在服务器防火墙上打开了一个端口为 1433。并且启用了tcp,是否还有其他一些我不知道的端口..我也打开了1434 ...

在 TCP 属性下,我为 ip 启用了 tcp(当然这部分必须是 owrking,好像我禁用了防火墙一样)并且端口号留空,动态端口为 0

我尝试将端口号设置为 1434 并将动态端口设置为空白。

还是没有快乐。

我有运行的 sql 浏览器服务器和命名管道..

我在没有防火墙的情况下通过 Sql 管理工作室从我的电脑运行我的测试。

我肯定错过了什么

真的很感激任何人都可以提供的任何帮助..我被卡住了

谢谢

spl*_*tne 5

可能你忘了执行这个命令:

 netsh firewall set portopening TCP 1433 "SQLServer" 
Run Code Online (Sandbox Code Playgroud)

您可以尝试这篇 Microsoft 支持文章的新“修复”功能:如何在 Windows Server 2008 上打开 SQL Server 的防火墙端口?

该页面还包含一个脚本,删除行,如果您不需要 SQL Service Broker、调试器、https 等。

@echo =========  SQL Server Ports  ===================
@echo Enabling SQLServer default instance port 1433
netsh firewall set portopening TCP 1433 "SQLServer" 
@echo Enabling Dedicated Admin Connection port 1434
netsh firewall set portopening TCP 1434 "SQL Admin Connection" 

...

netsh firewall set portopening UDP 1434 "SQL Browser" 
@echo Allowing multicast broadcast response on UDP (Browser Service Enumerations OK)
netsh firewall set multicastbroadcastresponse ENABLE 
Run Code Online (Sandbox Code Playgroud)