NodeJS 使用 node-mssql 连接到 sql server 不起作用

d.a*_*orm 2 sql-server node.js node-mssql

我使用 SQL Server Express 2012 的命名实例如果我尝试使用 SSMS 连接到它,它可以工作,使用以下参数:

Server name: mit-007\SQLEXPRESS2012
Authentication: SQL Server Authentication
    Login: sa
    Password: mit
Run Code Online (Sandbox Code Playgroud)

使用节点 mssql:

var sql = require('mssql');
var config = {
    user: 'sa',
    password: 'mit',
    server: 'mit-007',
    driver: 'tedious',
    database: 'Delvi',
    options: {
        instanceName: 'SQLEXPRESS2012'
    }
};

sql.connect(config).then(function(){ // and so on
Run Code Online (Sandbox Code Playgroud)

它记录了这个错误

{ [ConnectionError: Failed to connect to mit-007:undefined in 15000ms]
  name: 'ConnectionError',
  message: 'Failed to connect to mit-007:undefined in 15000ms',
  code: 'ETIMEOUT' }
Run Code Online (Sandbox Code Playgroud)

d.a*_*orm 5

浏览后我解决了这个问题,这就是我所做的

  1. 打开 SQL Server 配置管理器
  2. 单击 SQL Server 网络配置 => SQLEXPRESS2012 的协议
  3. 双击 TCP/IP
  4. 将启用更改为是
  5. 单击 IP 地址
  6. IPAll => 清除 TCP 动态端口,设置 TCP 端口 1433
  7. 打开服务.msc
  8. 启动 SQL Server 浏览器服务
  9. 重新启动 SQL Server

我不确定上面的每一个步骤都是必要的,但它们对我有用