首页 文章

SQL网络实例相关问题(错误258)

提问于
浏览
1

尝试使用具有服务器名称 [ XX.XXX.XXX.XXX,1433 \ MyServerName ] 和SQL身份验证的MS Management Studio从远程计算机连接到SQL数据库时,我收到以下消息:

无法连接到XX.XXX.XXX.XXX,1433 \ MyServerName . 其他信息: Build 与SQL Server的连接时发生与网络相关或特定于实例的错误 . 服务器未找到或无法访问 . 验证实例名称是否正确,以及SQL Server是否配置为允许远程连接 . (提供程序:TCP提供程序,错误:0 - 等待操作超时 . )(Microsoft SQL Server,错误:258)等待操作超时


我做了以下事情:

  • 在SQL Management Studio的“服务器属性”窗口中允许远程连接

  • 配置服务器计算机以具有静态IPv4 / DNS地址 .

  • 在SQL配置管理器中启用TCP / IP(在SQL Server网络配置中)

  • 在TCP / IP属性中,调整[协议 - >全部监听 - >否]并将IP [1-8]设置为TCP端口1433,将IPAll端口设置为1433(TCP动态端口留空)

  • 在Windows防火墙中为端口TCP 1433,UDP 1434设置入站/出站启用连接(域,公共,私有)规则(应该没有区别,因为指定了端口),服务可执行文件:C:\ Program Files中的sqlbrowser.exe( x86)\ Microsoft SQL Server \ 90 \ Shared(未使用我认为因为指定了端口) and sqlservr.exe位于C:\ Program Files \ Microsoft SQL Server \ MSSQL13.MyServerName \ MSSQL \ Binn

  • 在服务器端路由器中为端口1433(TCP),1434(UDP)(再次,无关紧要)在服务器的本地IPv4地址和端口1433,1434中设置NAT操作 .

  • 确保SQL服务正在运行,端口已打开并正在服务器计算机上侦听 .


我可以使用带有PC名称或计算机本地IPv4的Windows或Sql凭据连接到服务器计算机上的数据库 .

有趣的是,当运行 >telnet XX.XXX.XXX.XXX 1433 时,失败大约需要10-12秒(无法打开与主机的连接,在端口1433:连接失败),但我可以看到2个数据包进入路由器本身 . 与使用SQL Manager的登录相同 - 数据包来到路由器,但服务器机器拒绝(甚至没有到达机器 .

感谢您的建议 .


使用的版本:

  • MS SQL Server 2016 Express,MS SQL Management Studio 17,SQL Server 2016 Configuration Manager,Windows 10 Pro .

1 回答

  • 0

    你有没有尝试过telnet 1433本地?

    您确定本地连接使用的是TCP / IP吗?默认情况下,本地连接使用DBNMPNTW(命名管道),它使用后端的共享内存进行本地连接,并且比TCP / IP更快 .

    当SQL Server在TCP / IP上正常工作时,telnet会连接并让你眨眼等待协议 - 它不会挂起10-12秒而且会失败 .

    如果telnet在本地但不是远程工作,那么您知道问题出在网络层(防火墙,NAT,路由等) . 如果没有,则问题出在SQL配置设置中 . 更改连接设置后是否重新启动了服务?

相关问题