SQL Server连接失败需五步排查:一、启动服务并检查登录账户权限;二、启用TCP/IP协议并设静态端口1433;三、防火墙放行1433端口;四、SSMS或T-SQL启用远程连接;五、命名实例须确保SQL Server Browser服务运行。

SQL Server提示连接服务器失败时,无法执行查询、备份或管理操作,必须立即定位并修正配置层面的根本原因,不能仅依赖重试或重启服务。
确认SQL Server服务是否正在运行
打开“服务”管理控制台(services.msc),找到名称为 SQL Server (MSSQLSERVER) 或带实例名的项(如 SQL Server (SQLEXPRESS)),检查其“状态”是否为“正在运行”。
若显示“已停止”,右键→“启动”;若启动失败,双击该服务→切换到“登录”选项卡→确认“此账户”设置为本地系统账户或具备登录权限的域账户,【禁止使用空白密码的本地账户】。
启用TCP/IP协议并配置监听端口
打开 SQL Server 配置管理器(以管理员身份运行)→展开“SQL Server 网络配置”→选择对应实例的“协议”(如“MSSQLSERVER 的协议”)→右键“TCP/IP”→“启用”。
双击“TCP/IP”→切换到“IP地址”选项卡→拉到底部找到“IPAll”节→清空“TCP动态端口”框(设为 blank),在“TCP端口”中填入 1433(默认端口)→点击“确定”→弹出提示后重启 SQL Server 服务。
注意:若此前未清空“TCP动态端口”,SQL Server 将忽略“TCP端口”设置,始终使用随机端口,导致客户端无法预知连接地址。
允许远程连接并开放防火墙
方法一:通过 SSMS 设置
用 Windows 身份验证登录本地 SSMS→右键服务器名→“属性”→左侧选“连接”→勾选“允许远程连接到此服务器”→点击“确定”。
方法二:通过 T-SQL 强制启用(适用于无法打开 SSMS 时)
以管理员身份运行 cmd→输入:sqlcmd -S localhost -E -Q "EXEC sys.sp_configure 'remote access', 1; RECONFIGURE;"→回车执行。
防火墙放行:进入“Windows Defender 防火墙→高级设置→入站规则→新建规则→端口→TCP→特定本地端口 1433→允许连接→按需勾选域/专用/公用→命名为“SQL Server TCP 1433”→完成。
验证SQL Server Browser服务状态(仅限命名实例)
如果你连接的是非默认实例(如 SERVERNAME\SQLEXPRESS),必须确保 SQL Server Browser 服务处于“正在运行”状态。
在服务列表中找到 SQL Server Browser→右键“启动”→若启动失败,双击该服务→“登录”选项卡中将“此账户”改为“本地系统账户”→应用→重启服务。
这一步不可跳过:命名实例不监听固定端口,客户端需先通过 UDP 1434 端口向 Browser 服务询问实际端口号,【Browser 服务未运行=命名实例对外不可见】。
测试连接通路是否真正打通
第一步:在服务器本机打开命令提示符,执行 ping 127.0.0.1 和 telnet 127.0.0.1 1433(若提示未启用 Telnet 客户端,请在“启用或关闭 Windows 功能”中勾选“Telnet 客户端”)。
第二步:若 telnet 成功,说明服务监听正常;若失败,返回上一步检查 TCP/IP 是否启用、端口是否被占用、防火墙是否拦截本地回环。
第三步:从另一台客户机执行 telnet 服务器IP 1433,成功即表示网络层与服务层均就绪,可进行下一步身份验证排查。

















