mysql - 为什么我在 NodeJS 中使用 MySQL 时需要连接互联网?

标签 mysql node.js express

我在 NodeJS 中使用 MySQL 时遇到了一个奇怪的问题。当我连接到互联网时,我的 MySQL 数据库可以工作,但是,当我离线时,查询 MySQL 数据库会出现错误。我正在使用 Express 连接。

我的连接:

app.use(
    connection( mysql, {
        host: dbConfig.host,
        user: dbConfig.user,
        password: dbConfig.password,
        database: dbConfig.database
    }, 'pool' )
);  

错误消息:

{
  [Error: getaddrinfo ENOENT localhost:3306]
  code: 'ENOENT',
  errno: 'ENOENT',
  syscall: 'getaddrinfo',
  hostname: 'localhost',
  host: 'localhost',
  port: 3306,
  fatal: true
}

还有:

connection.query(
           ^
TypeError: Cannot read property 'query' of undefined

最佳答案

很可能您在 /etc/hosts 文件中缺少 localhost 条目。

关于mysql - 为什么我在 NodeJS 中使用 MySQL 时需要连接互联网?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35680753/

相关文章:

php - 如何使用自己的函数替换从 MySQL 返回的数组中的数组元素

MySQL 设置了一个规则,确保两列中只有一列可以填充值

javascript - NodeJS 服务器请求

javascript - 如何更改then()勺 Node js中的变量内容

node.js - 如何在 Node.js 中结合使用 express 和 tcp-socket

angularjs - NodeJS 无法加载 Angular

php - MySQL 只显示最后的数据

mysql - 使用 where 子句获取 mysql 中最流行的前 5 个值

javascript - Node.js npm 启动错误

javascript - 如何将 expressJS 服务器代码拆分到不同的文件中