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

Electron应用无法连接SQL Server服务器问题求助

Electron + mssql 无法连接SQL Server的排查与解决

核心配置错误修复

1. 服务器地址转义问题

JavaScript字符串里的反斜杠是转义字符,你配置中的server: 'SERVER\DB'会被解析为错误地址,必须改成双反斜杠:

server: 'SERVER\\DB'

或者直接用斜杠替代反斜杠:

server: 'SERVER/DB'

2. 身份认证方式冲突

你的配置同时启用了SQL Server账号认证(user+password)和Windows集成认证(trustedConnection: true),两种方式不能共存,二选一即可:

  • 若用SQL认证(和SSMS的sa账号一致):将options里的trustedConnection改为false
  • 若用Windows集成认证:删除配置中的user和password字段

3. 端口与地址格式匹配

SSMS使用tcp:SERVER/DB,1433格式,对应mssql配置可以直接指定TCP协议的完整地址,同时注意端口应为数字类型(你原配置写的是字符串,可能导致解析异常):

server: 'tcp:SERVER\\DB,1433'

或者分开指定实例名和端口:

server: 'SERVER\\DB',
port: 1433, // 改为数字

修正后的配置示例

SQL Server账号认证版本

var dbConfig = {
    user: 'sa',
    password: '123456',
    server: 'SERVER\\DB',
    port: 1433,
    trustServerCertificate: true,
    database: 'APPDATA',
    requestTimeout: 600000,
    options: {
        trustedConnection: false,
        useUTC: true
    },
    pool: {
        idleTimeoutMillis: 600000,
    }
}

Windows集成认证版本

var dbConfig = {
    server: 'SERVER\\DB',
    port: 1433,
    trustServerCertificate: true,
    database: 'APPDATA',
    requestTimeout: 600000,
    options: {
        trustedConnection: true,
        useUTC: true
    },
    pool: {
        idleTimeoutMillis: 600000,
    }
}

额外排查点

  • 确认Electron的Node集成权限:创建BrowserWindow时,确保nodeIntegration: true;若启用了上下文隔离,需配置预加载脚本保证mssql库正常运行
  • 检查防火墙规则:确认Electron.exe被允许出站访问1433端口,部分防火墙会单独拦截程序而非仅限制端口
  • 验证SQL Server TCP/IP协议:打开SQL Server配置管理器,找到对应实例的网络配置,确保TCP/IP协议处于启用状态

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 22:15:31