news 2026/4/17 19:18:59

Caused by:com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 > 连接到主机 localhost 的 TCP/IP 连接失败

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Caused by:com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 > 连接到主机 localhost 的 TCP/IP 连接失败


在使用SQLServer数据库运行项目程序的时候,报错

Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433
连接到主机 localhost 的 TCP/IP 连接失败。错误:“Connection refused:
connect。请验证连接属性。确保 SQL Server 的实例正在主机上运行,且在此端口接受 TCP/IP 连接,还要确保防火墙没有阻止到此端口的 TCP 连接。”。com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:190)

根据以往使用数据库的经验,首先排查防火墙中是否拦截了1433端口,但是1433端口已经打开,并且在防火墙关闭的情况下,仍然存在上述报错,后面通过下面方式解决

一:首先检查一下下面的三个内容

1.确认 SQL Server 实例是否真的在监听 1433 端口

以管理员身份打开命令行窗口,执行下面的命令

# 查看所有监听的 TCP 端口netstat-ano|findstr"LISTENING"|findstr"1433"

正常的执行情况为

执行之后,窗口显示下面内容,说明没有在监听

直接重新配置TCP/IP 协议

2.确认 SQL Server 服务是否为「默认实例」

打开服务(Win+R → services.msc):
若服务名是SQL Server (MSSQLSERVER)→ 是默认实例,应监听 1433 端口;

若服务名是SQL Server (SQLEXPRESS)/SQL Server (自定义实例名)→ 是命名实例,默认不监听 1433 端口

直接改连接字符串为

// 命名实例写法(无需端口) jdbc:sqlserver://localhost\SQLEXPRESS;databaseName=你的库名;encrypt=false;trustServerCertificate=true

3.临时关闭防火墙验证(排除拦截)

打开「Windows Defender 防火墙」→ 「启用或关闭 Windows Defender 防火墙」→ 临时关闭「专用网络」「公用网络」的防火墙;

重新运行程序,若能连接 → 说明是防火墙拦截,需按之前步骤放行 1433 端口(或命名实例的动态端口);
若仍不能连接 → 排除防火墙问题,聚焦 SQL Server 配置。

二:针对「默认实例 1433 端口未监听」的修复步骤

1. 重启 SQL Server 服务(先简单试)

右键「SQL Server (MSSQLSERVER)」→ 「停止」→ 等待 10 秒 → 「启动」;
重启后再次执行下面的命令,看是否监听。

netstat-ano|findstr1433

2. 重新配置 TCP/IP 协议(关键)

打开SQL Server 配置管理器(Win+R → SQLServerManager15.msc,版本对应:2019=15、2017=14)或者直接搜索SQL Server 配置管理器即可;

展开SQL Server 网络配置→ 点击MSSQLSERVER 的协议

右键TCP/IP启用(灰色则已启用);

双击TCP/IP→ 切换到IP 地址标签页:

找到IP1 IP2… IPAll,依次检查:

所有已启用列设为

IPAll下:TCP 端口填 1433,TCP 动态端口清空;

点击确定→ 会提示需重启服务生效,再次重启SQL Server (MSSQLSERVER)

重启后执行netstat -ano | findstr 1433,确认有LISTENING状态。

三: JFinal 框架专属配置检查

1. 连接字符串必须加 2 个参数(高版本 SQL Server 必加)

java运行

// 正确的连接字符串模板(默认实例)StringjdbcUrl="jdbc:sqlserver://localhost:1433;databaseName=你的库名;encrypt=false;trustServerCertificate=true";// 命名实例模板StringjdbcUrl="jdbc:sqlserver://localhost\SQLEXPRESS;databaseName=你的库名;encrypt=false;trustServerCertificate=true";encrypt=false:关闭 SSL 加密(本地测试用,生产可按需开启); trustServerCertificate=true:跳过证书验证(避免「SSL 握手失败」)

2. 确认 JFinal 数据源配置未写错

java运行

// 初始化 Druid 数据源(JFinal 常用)DruidPlugindruidPlugin=newDruidPlugin(jdbcUrl,// 上面的连接字符串"sa",// 数据库账号(确认已启用)"你的密码",// 确认密码正确"com.microsoft.sqlserver.jdbc.SQLServerDriver"// 驱动类不要写错);// 启动数据源 + ActiveRecorddruidPlugin.start();ActiveRecordPluginarp=newActiveRecordPlugin(druidPlugin);arp.start();// 报错发生在这一步,说明数据源连不上

3. 验证账号密码是否正确

打开 SSMS → 用SQL Server 身份验证→ 输入 sa + 密码 → 看能否连接本地实例;
若不能连接:右键sa属性→ 取消登录已禁用→ 重置密码 → 重启 SQL Server 服务。

四、终极兜底方案(以上都无效时)

1. 检查 SQL Server 是否安装损坏

控制面板 → 卸载程序 → 找到Microsoft SQL Server→ 选择修复
修复完成后,重新配置 TCP/IP 协议 + 重启服务。

2. 更换连接地址(localhost → 127.0.0.1)

部分环境下 localhost 解析异常,替换连接字符串为:

java运行

jdbc:sqlserver://127.0.0.1:1433;databaseName=你的库名;encrypt=false;trustServerCertificate=true

3. 查看 SQL Server 错误日志

打开 SSMS → 连接实例(若能连)→ 展开管理SQL Server 日志→ 查看最近的错误,会提示为何 1433 端口未监听(如权限不足、配置错误);
若连不上 SSMS,日志文件默认路径:C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\Log\ERRORLOG

欢迎大家点赞,评论,加关注呦

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 6:25:09

OpenCore Legacy Patcher终极指南:让老Mac重获新生

还在为你的老款Mac无法升级最新macOS而烦恼吗?OpenCore Legacy Patcher(简称OCLP)正是你需要的解决方案。这款开源工具专门为那些被Apple官方放弃支持的Mac设备提供兼容性支持,让你能够在2007年及以后的旧款Mac上轻松安装和运行ma…

作者头像 李华
网站建设 2026/4/16 15:04:29

eSpeak NG文本转语音终极指南:从入门到精通

eSpeak NG文本转语音终极指南:从入门到精通 【免费下载链接】espeak-ng espeak-ng: 是一个文本到语音的合成器,支持多种语言和口音,适用于Linux、Windows、Android等操作系统。 项目地址: https://gitcode.com/GitHub_Trending/es/espeak-n…

作者头像 李华
网站建设 2026/4/18 8:05:36

MsgViewer:高效邮件查看与格式转换的全能助手

MsgViewer:高效邮件查看与格式转换的全能助手 【免费下载链接】MsgViewer MsgViewer is email-viewer utility for .msg e-mail messages, implemented in pure Java. MsgViewer works on Windows/Linux/Mac Platforms. Also provides a java api to read mail mess…

作者头像 李华
网站建设 2026/4/18 8:04:40

OpenCore-Legacy-Patcher终极指南:让老款Mac焕发新生的完整教程

OpenCore-Legacy-Patcher终极指南:让老款Mac焕发新生的完整教程 【免费下载链接】OpenCore-Legacy-Patcher 体验与之前一样的macOS 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 想要让您的2007年及以后的老款Mac设备运行最新…

作者头像 李华
网站建设 2026/4/18 7:03:10

Java Excel处理性能革命:FastExcel如何实现20倍加速

Java Excel处理性能革命:FastExcel如何实现20倍加速 【免费下载链接】fastexcel Generate and read big Excel files quickly 项目地址: https://gitcode.com/gh_mirrors/fas/fastexcel 还在为Java处理Excel文件时的性能瓶颈而苦恼吗?当你面对数万…

作者头像 李华
网站建设 2026/4/13 19:57:34

Arturo:在“单词”与“符号”之间,追寻一种“纯正”的语法

思维导图在这:https://www.anygraphanywhere.com/automap/mindmap.html?link1765710459448-1765710459448 在编程语言设计的万神殿中,主流思潮往往围绕两条轴线展开:一条是追求极致的性能与控制,如C与Rust;另一条是构…

作者头像 李华