0

我正在使用节点并且我遇到了这个错误,但这只是有时会发生。但这一次是永久的。

我的配置:

    var mssql = require("mssql");
var config =
{
  user: "user",
  password: "pass",
  server: "devsv",
  database: "db"
}

var db = new mssql.Connection(config);

db.connect(function(err)
{
    console.log(err);
});

module.exports = db;

错误:

    { ConnectionError: Failed to connect to devsv:1433 - getaddrinfo ENOTFOUND devsv devsv:1433
    at Connection.<anonymous> (/Users/user/Projects/p1/node_modules/mssql/lib/tedious.js:378:25)
    at Object.onceWrapper (events.js:290:19)
    at emitOne (events.js:96:13)
    at Connection.emit (events.js:188:7)
    at Connection.socketError (/Users/user/Projects/p1/node_modules/tedious/lib/connection.js:531:14)
    at emitOne (events.js:96:13)
    at Socket.emit (events.js:188:7)
    at connectErrorNT (net.js:1025:8)
    at _combinedTickCallback (internal/process/next_tick.js:74:11)
    at process._tickCallback (internal/process/next_tick.js:98:9)
  name: 'ConnectionError',
  message: 'Failed to connect to devsv:1433 - getaddrinfo ENOTFOUND devsv devsv:1433',
  code: 'ESOCKET' }

谢谢你。

4

1 回答 1

0

ENOTFOUND通常意味着无法将主机名解析为地址。

有很多可能的原因,包括:

  • 您可能需要添加devsv到本地主机名解析配置(例如,为其添加一个条目/etc/hosts)。

  • 也许您的服务器上的默认域设置不正确。

  • 也许您在主机名中有错字,它不应该是devsv其他内容。

以上不是详尽的清单,但这些都是可能的原因。

于 2017-01-11T19:02:14.850 回答