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(除非需要),以简化安全管理和提升可维护性。

相关推荐
倒流时光三十年21 小时前
SpringBoot 数据库同步 Elasticsearch 性能优化
数据库·spring boot·elasticsearch
码农小卡拉21 小时前
深入解析Spring Boot文件加载顺序与加载方式
java·数据库·spring boot
怣5021 小时前
MySQL多表连接:全外连接、交叉连接与结果集合并详解
数据库·sql
wjhx1 天前
QT中对蓝牙权限的申请,整理一下
java·数据库·qt
冰暮流星1 天前
javascript之二重循环练习
开发语言·javascript·数据库
万岳科技系统开发1 天前
食堂采购系统源码库存扣减算法与并发控制实现详解
java·前端·数据库·算法
冉冰学姐1 天前
SSM智慧社区管理系统jby69(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·管理系统·智慧社区·ssm 框架
杨超越luckly1 天前
HTML应用指南:利用GET请求获取中国500强企业名单,揭秘企业增长、分化与转型的新常态
前端·数据库·html·可视化·中国500强
Elastic 中国社区官方博客1 天前
Elasticsearch:Workflows 介绍 - 9.3
大数据·数据库·人工智能·elasticsearch·ai·全文检索
仍然.1 天前
MYSQL--- 聚合查询,分组查询和联合查询
数据库