【问题标题】:Getting Error: connect ECONNREFUSED 127.0.0.1:3306出现错误:连接 ECONNREFUSED 127.0.0.1:3306
【发布时间】:2019-05-30 08:32:47
【问题描述】:

我是 node.js 的初学者,正在学习如何为 Android 设置 node.js 服务器的教程。当我执行此命令时,nodemon app.js 我收到此错误

[nodemon] 1.19.0
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `node app.js`
--Server started at port: 8080--
Error: connect ECONNREFUSED 127.0.0.1:3306
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1054:14)
    --------------------
    at Protocol._enqueue (F:\soi19\android-login-register-system\server\node_modules\mysql\lib\protocol\Protocol.js:144:48)
    at Protocol.handshake (F:\soi19\android-login-register-system\server\node_modules\mysql\lib\protocol\Protocol.js:51:23)
    at Connection.connect (F:\soi19\android-login-register-system\server\node_modules\mysql\lib\Connection.js:119:18)
    at Object.<anonymous> (F:\soi19\android-login-register-system\server\routes.js:8:4)
    at Module._compile (internal/modules/cjs/loader.js:759:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:770:10)
    at Module.load (internal/modules/cjs/loader.js:628:32)
    at Function.Module._load (internal/modules/cjs/loader.js:555:12)
    at Module.require (internal/modules/cjs/loader.js:666:19)
    at require (internal/modules/cjs/helpers.js:16:16)

我尝试了其他答案,例如将 host: 'localhost' 更改为 host:'127.0.0.1' 以及类似的其他答案,但它们都不起作用。任何帮助将不胜感激。

【问题讨论】:

  • 该应用程序正在尝试连接到 mysql。您是否安装了 mysql 并在其默认端口 3306 上进行侦听?

标签: node.js node-modules connect


【解决方案1】:

运行服务器时: 在 {"address":"::","family":"IPv6","port":39333}

上打开服务器

运行客户端时:

  events.js:298
  throw er; // Unhandled 'error' event
  Error: connect ECONNREFUSED 127.0.0.1:50302
  at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1137:16)
  Emitted 'error' event on Socket instance at:
  at emitErrorNT (internal/streams/destroy.js:84:8)
  at processTicksAndRejections (internal/process/task_queues.js:84:21) {
  errno: -111,
  code: 'ECONNREFUSED',
  syscall: 'connect',
  address: '127.0.0.1',
  port: 50302
  }

我在使用 node.js 网络时得到了这个服务器。

解决方案:

确保在使用 Node.js 网络时在客户端和服务器应用程序中使用相同的端口号。每次重新启动服务器时,服务器应用程序的端口号都会动态更改。首先启动服务器,记下端口号,然后为客户端应用程序使用相同的端口号。 希望这会有所帮助!

【讨论】: