Skip to content

解决 SQL Server 连接错误 40:网络接口错误排查指南 ​

💡 问题描述

在使用 SQL Server 时,经常会遇到“在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器...”的提示,错误代码通常为 Error: 40。这通常是由服务未启动或网络配置不当引起的。

Error 40 错误示例


1. 场景一:SQL Server 服务未启动 ​

这是最常见的原因,由于数据库引擎服务被停止,客户端无法建立连接。

1.1 排查步骤 ​

  1. 右键点击 我的电脑 -> 选择 管理。
  2. 在弹出的窗口中找到 服务和应用程序 -> SQL Server 配置管理器。

SQL Server 配置管理器入口

  1. 点击 SQL Server 服务,查看右侧列表。

服务列表视图

1.2 关键服务说明 ​

  • SQL Server (实例名):核心数据库引擎服务。若状态为“已停止”,请右键点击并选择“启动”。
  • SQL Server Browser:负责将连接信息传递给客户端。若关闭,可能导致通过实例名连接失败。
  • SQL Server 代理 (Agent):负责自动执行作业任务。

启动引擎服务后,即可恢复正常连接:

连接成功示例


2. 场景二:TCP/IP 协议与端口配置问题 ​

如果服务已启动但仍报错,通常是网络协议配置问题,例如出现如下服务启动异常:

服务启动错误

2.1 启用 TCP/IP 协议 ​

  1. 打开 SQL Server 配置管理器。
  2. 展开 SQL Server 网络配置 -> 点击对应实例的协议(如 MSSQLSERVER 的协议)。

网络配置视图

  1. 确保 TCP/IP 状态为“已启用”。若为禁用,请右键点击启用。

协议启用状态

2.2 配置 1433 端口 ​

  1. 右键点击 TCP/IP -> 属性。
  2. 切换到 IP 地址 选项卡,滚动到最下方的 IPAll。
  3. 确保 TCP 端口 设置为 1433。如果为空,可能导致无法监听默认端口。

IPAll 端口设置

2.3 解决协议冲突 ​

  • Via 协议:若启用 Via 协议且其同样监听 1433 端口,可能导致服务启动失败或连接冲突。建议将其设为“禁用”。

禁用 Via 协议


✅ 总结 处理 Error 40 错误时,应遵循“先查服务,后查协议,再查端口”的原则。大多数情况下,启动引擎服务或补全 IPAll 的端口配置即可解决问题。


🔗 参考资料

方舟 · Ark