提示「服务器未监听」:TCP/IP 没启用怎么办?
远程连接 SQL Server 报「服务器未监听」类错误的高频原因是 TCP/IP 协议被禁用,本文给出启用 TCP/IP、核对端口与重启服务的操作步骤。
简短答案
默认安装的引擎经常只启用共享内存协议(本机够用),TCP/IP 处于禁用状态。此时远程连接必然失败,常见提示就是「服务器未监听」或「无法打开服务器」。进「SQL Server 配置管理器」把 TCP/IP 启用、确认端口,再重启引擎服务即可。
现象对照
| 现象 | 原因 | 处理 |
|---|---|---|
| 本机共享内存能连、远程全失败 | TCP/IP 禁用 | 启用 TCP/IP 并重启服务 |
| 启用了仍连不上 | 端口是动态/被改 | 核对实例端口并放行防火墙 |
| 命名实例远程连不上 | TCP 端口动态 + Browser 没开 | 固定端口或开 Browser |
操作步骤
- 打开「SQL Server 配置管理器」(开始菜单搜 SQL Server 配置管理器)→ SQL Server 网络配置 → 选择目标实例。
- 右侧把 TCP/IP 状态改为启用;默认实例确认 TCP 的端口为 1433,命名实例建议设固定端口(动态端口远程要靠 Browser)。
- 重启 SQL Server 服务(改协议必须重启才生效):
Restart-Service MSSQLSERVER -Force # 默认实例
Restart-Service "MSSQL`MyInstance" -Force # 命名实例
- 客户端
Test-NetConnection 服务器 -Port 1433验证端口可达,再到 SSMS 里实连。 - 各版本的网络配置位置一致,参见 SQL Server 2022 Developer、SQL Server 2019 Developer 条目页。
只改协议不重启服务是最高频的「改了没用」:TCP/IP 的改动必须重启 SQL Server 服务(不是只重启 SSMS)才生效。
操作小结
- 配置管理器启用 TCP/IP,命名实例设固定端口。
- 必须重启 SQL Server 服务。
- 客户端先测端口连通,再 SSMS 实连。