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地址),它的工作!