Node.js MSSQL tedius ConnectionError:无法连接到本地主机:1433 – 连接ECONNREFUSED

我正尝试使用带有mssql连接接口的NodeJS连接到MSSQL 2012。

当试图连接时,我得到以下错误:

{ [ConnectionError: Failed to connect to localhost:1433 - connect ECONNREFUSED] name: 'ConnectionError', message: 'Failed to conncet to localhost:1433 - connect ECONNREFUSED', code: 'ESOCKET' } 

有想法该怎么解决这个吗?

解决scheme是启用默认禁用的TCP连接。

在这里输入图像描述

我的情况与马特的​​情况并不完全一样,但是他的截图足以记住我缺less的东西。

在这里输入图像描述

正如在这里所说的,当您使用SQL Server实例名称来连接它时,您必须运行SQL Server Browser。

options.instanceName要连接的实例名称。 SQL Server Browser服务必须在数据库服务器上运行,并且数据库服务器上的UDP端口1444必须可到达。 (没有默认)与options.port相互排斥。

如果在启用TCP连接之后仍然不能正常工作。 这是我自己的configuration。

 var config = { "user": 'admin', "password": 'password', "server": 'ALBERT-PC', "database": 'database_name', "port": '61427', "dialect": "mssql", "dialectOptions": { "instanceName": "SQLEXPRESS" } }; 

最佳做法是首先使用与希望通过应用程序使用的相同协议,端口和凭据,使用查询分析器(SQL Management Studio(Windows)或SQLPro for MSSQL(Mac))validation与SQL服务器的连接。

在Management Studio中,格式为Server,Port(例如192.168.1.10,1433); 你可能会使用SQL Server身份validation而不是Windows身份validation。


步骤来configurationSQL Server:

如果您打算使用SQL Server身份validation,请使用混合身份validation进行安装。

安装SQL Server以在固定端口号上侦听TCP:

  • SQLconfigurationpipe理器SQL Servernetworkingconfiguration
    • 用于{实例}的协议
      • TCP / IP – 启用(双击)
      • IP地址(在所有需要的接口上)
        • TCPdynamic端口=空白! (不是零)
        • TCP端口 – 1433(或所需的端口)

尽pipe我在SQL Management Studio和其他应用程序中使用“localhost”,但无法与“localhost”连接。 当我使用计算机名称(networking地址),它的工作!