SQL Server 支持多种网络协议用于客户端与数据库引擎之间的通信

SQL Server 支持多种网络协议用于客户端与数据库引擎之间的通信。最常见的 3 种数据库连接协议(也称为网络协议或通信协议)如下:


1. TCP/IP(Transmission Control Protocol/Internet Protocol)

  • 最常用、推荐的协议,尤其适用于远程连接和跨网络通信。
  • 使用固定的端口(默认是 1433),也可以配置为动态端口或多 IP 监听。
  • 支持 IPv4 和 IPv6。
  • 在防火墙环境中易于配置(只需开放对应端口)。
  • 适用场景:局域网、广域网、互联网连接、应用程序服务器与数据库分离部署。

优点 :稳定、高效、广泛支持。

⚠️ 注意 :需确保 SQL Server 已启用 TCP/IP 协议(通过 SQL Server 配置管理器 启用)。


2. Named Pipes(命名管道)

  • 基于 Windows 的进程间通信(IPC)机制,使用文件系统路径风格的管道名(如 \\.\pipe\sql\query)。
  • 通常用于 本地或局域网内 的快速通信,尤其在早期 Windows 环境中较常见。
  • 依赖于 SMB(Server Message Block)协议,因此在网络延迟高或跨防火墙时性能较差。
  • 默认在本地连接(如 localhost.)时可能优先使用 Named Pipes。

优点 :在低延迟局域网中性能良好。

缺点:跨网络或互联网支持差,安全性较低,现代应用中逐渐被 TCP/IP 取代。


3. Shared Memory(共享内存)

  • 仅限本地连接:当客户端与 SQL Server 实例运行在同一台机器上时使用。
  • 是最快、最高效的协议,因为不经过网络堆栈。
  • 无法用于远程连接。
  • 当连接字符串中使用 (local)localhost.127.0.0.1 且未指定协议时,SQL Server 客户端驱动程序会优先尝试 Shared Memory。

优点 :零网络开销,速度极快。

限制:只能用于本机连接。


补充说明:

  • SQL Server 客户端(如 .NET 的 SqlClient)会按 协议顺序 自动尝试连接(可通过 SQL Server Client Network Utility 或注册表配置顺序)。
  • 默认协议尝试顺序通常是:Shared Memory → TCP/IP → Named Pipes
  • VIA(Virtual Interface Adapter) 曾是第四种协议,但微软已在 SQL Server 2012 之后弃用并移除,不再推荐使用。

如何查看/配置协议?

  • 使用 SQL Server 配置管理器(SQL Server Configuration Manager)
    • 启用/禁用服务器端的协议(SQL Server Network Configuration → Protocols for <实例名>)
    • 配置客户端协议(SQL Native Client Configuration → Client Protocols)

总结对比:

协议 是否支持远程 默认启用 典型用途
Shared Memory ❌ 仅本地 本机调试、本地工具连接
TCP/IP 大多数生产环境、远程连接
Named Pipes ✅(局域网) ⚠️ 视版本 旧系统、Windows 内网环境

💡 最佳实践 :生产环境中建议 启用 TCP/IP 并禁用 Named Pipes 和 Shared Memory(除非需要),以简化安全管理和提升可维护性。

相关推荐
rchmin10 分钟前
向量数据库Milvus安装及使用实战经验分享
数据库·milvus
ego.iblacat15 分钟前
Python 连接 MySQL 数据库
数据库·python·mysql
祖传F8726 分钟前
quickbi数据集数据查询时间字段显示正确,仪表板不显示
数据库·sql·阿里云
Leon-Ning Liu1 小时前
Oracle 26ai新特性:时区、表空间、审计方面的新特性
数据库·oracle
humors2211 小时前
各厂商工具包网址
java·数据库·python·华为·sdk·苹果·工具包
Yushan Bai2 小时前
ORACLE数据库在进行DROP TABLE时失败报错ORA-00604问题的分析处理
数据库·oracle
77美式2 小时前
Node + Express + MongoDB 后端部署全解析:新手零踩坑
数据库·mongodb·express
城数派2 小时前
2000-2025年我国省市县三级逐8天日间地表温度数据(Shp/Excel格式)
数据库·arcgis·信息可视化·数据分析·excel
AC赳赳老秦2 小时前
OpenClaw text-translate技能:多语言批量翻译,解决跨境工作沟通难题
大数据·运维·数据库·人工智能·python·deepseek·openclaw
AI应用实战 | RE2 小时前
014、索引高级实战:当单一向量库不够用的时候
数据库·人工智能·langchain