You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java通过JDBC连接本地SQL Server失败问题排查求助

SQL Server JDBC连接失败问题排查与解决方案

一、确认主机与实例名称的正确性

  • 打开SQL Server配置管理器,展开「SQL Server服务」,找到目标实例(默认实例名为MSSQLSERVER),右键选择「属性」,在「服务」标签页查看服务名称,确认实例名无误;同时检查「SQL Server网络配置」下该实例的协议是否已启用。
  • 打开命令提示符,执行 sqlcmd -L 命令,会列出当前网络中可检测到的SQL Server实例,核对你的实例名称是否在列表中。
  • 本地连接可尝试用 localhost 或 127.0.0.1 替代主机名,规避主机名解析问题,修改后的URL示例:
    String url = "jdbc:sqlserver://localhost\\MSSQLSERVER;databaseName=datatreck";
    

二、代码层面排查

  1. 类名拼写修正:你的类名JvaConnect2SQL存在拼写错误(应为JavaConnect2SQL),虽不影响连接,但建议修正以避免后续维护问题。
  2. URL优化:
    • 若使用的是默认实例(MSSQLSERVER),可省略实例名,直接使用jdbc:sqlserver://LAPTOP-0CSKUFIE;databaseName=datatreck,默认实例会监听1433端口,无需依赖SQL Server Browser服务。
    • 显式指定端口号绕开Browser服务,先确认实例监听的TCP端口(通常默认是1433),修改URL为:
      String url = "jdbc:sqlserver://LAPTOP-0CSKUFIE:1433;databaseName=datatreck";
      
  3. 驱动显式加载:部分旧版本JDBC需手动加载驱动类,在try块前添加:
    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
    

三、其他关键配置检查

  • SQL Server Browser服务状态:按报错提示,务必确认该服务正在运行。在Windows服务列表中找到「SQL Server Browser」,设置为自动启动并启动服务。
  • 远程连接权限:打开SQL Server Management Studio,右键目标服务器实例→「属性」→「连接」,勾选「允许远程连接到此服务器」。
  • SA账户验证:确认sa账户已启用,且拥有datatreck数据库的访问权限,同时核对密码的正确性(注意SQL Server的密码大小写设置)。
  • 端口防火墙规则:除了UDP 1434,还要确保SQL Server实例监听的TCP端口(如1433)已添加防火墙允许规则,避免端口被拦截。

内容的提问来源于stack exchange,提问作者VincHawthorne

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 15:25:17