用命名管道协议连 SQL Server 怎么做?
用命名管道(Named Pipes)协议连接 SQL Server 的启用方法、适用场景与和 TCP 的取舍,以及启用后的验证步骤。
简短答案
命名管道(Named Pipes)是 SQL Server 的传统网络协议之一,默认不启用;只有同一网段内的 Windows 客户端会用到它(走 SMB)。启用方法很简单:「SQL Server 配置管理器」里把 Shared Memory 之外的 Named Pipes 启用、重启服务,客户端连接时指定管道即可。
协议取舍对照
| 协议 | 适用 | 特点 |
|---|---|---|
| 共享内存 | 同机连接 | 最快,零网络开销 |
| TCP/IP | 跨机、跨网段 | 通用,远程首选 |
| 命名管道 | 同网段 Windows 客户端 | 走 SMB,需放通 139/445 |
现代环境里远程连接一律走 TCP/IP;命名管道主要用于同一网段内老式 Windows 客户端场景,跨子网基本不用。
启用步骤(服务端)
- 「SQL Server 配置管理器」→ SQL Server 网络配置 → 目标实例 → 把 Named Pipes 启用。
- 重启 SQL Server 服务(协议改动必须重启才生效)。
- 若客户端走管道跨机访问,Windows 防火墙需放行 SMB 相关端口(139/445),并保证 Windows 文件共享功能可用。
客户端指定管道连接
- SSMS 连接目标写管道形式:
\\机器名\实例名(以双反斜杠开头);或 - 在 SSMS 连接属性里把网络库/协议选为 Named Pipes。
验证与注意
- 启用后在客户端用管道形式实连验证;连不上先确认 SMB 共享链路(同机测试 + 防火墙)。
- 各版本协议启用位置一致,见 SQL Server 2022 Developer、SQL Server 2019 Developer 条目页。
- 生产环境若无明确需求,保持 Named Pipes 关闭即可——少一个协议面就少一类暴露。
操作小结
- 服务端启用 Named Pipes + 重启服务。
- 客户端用「\机器名\实例名」或连接属性里选管道。
- 走管道的跨机访问要放行 SMB 端口;远程场景优先 TCP/IP。