【问题标题】:Connection between MariaDB and NodeJS not workingMariaDB 和 NodeJS 之间的连接不起作用
【发布时间】:2022-01-13 20:38:30
【问题描述】:

我正在为一个小项目使用 Ionos 的 vServer。我安装了 MariaDB 和 NodeJS。目前我正在尝试将它们连接起来。这是我的代码:

const mariadb = require('mariadb');
const pool = mariadb.createPool({
     host: 'localhost', 
     user:'root', 
     password: 'xxxxxxxxx',
     database: 'christmastrees',
     connectionLimit: 5,
});
async function asyncFunction() {
  let conn;
  try {
    conn = await pool.getConnection();
    const rows = await conn.query("SELECT * from bäume");
    console.log(rows); //[ {val: 1}, meta: ... ]
  } catch (err) {
    throw err;
  } finally {
    if (conn) return conn.end();
  }
}

但是在执行文件(节点应用程序)时,几秒钟后我收到一条错误消息

Error: connect ECONNREFUSED 127.0.0.1:3306
    at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1157:16)
 From event:
    at _registerHandshakeCmd (/root/server/node_modules/mariadb/lib/connection.js:745:11)
    at /root/server/node_modules/mariadb/lib/connection.js:57:11
    at new Promise (<anonymous>)
    at Connection.connect (/root/server/node_modules/mariadb/lib/connection.js:56:16)
    at createConnectionPoolPromise (/root/server/node_modules/mariadb/lib/pool-promise.js:31:8)
    at creationTryout (/root/server/node_modules/mariadb/lib/pool-base.js:373:9)
    at listOnTimeout (node:internal/timers:557:17)
    at processTimers (node:internal/timers:500:7) {
  errno: -111,
  code: 'ECONNREFUSED',
  syscall: 'connect',
  address: '127.0.0.1',
  port: 3306,
  fatal: true
}

所以我寻求帮助,2 小时后,我确实只找到了一个想法。我将这行代码添加到我的连接中...

端口:'/var/run/mysqld/mysqld.sock'

我再次尝试使用 node 应用程序,但这一次我没有收到错误消息,它一直在加载并且没有任何反应。

如果有任何帮助,我将不胜感激......

【问题讨论】:

  • MariaDb 是否在您的计算机和端口 3306 上本地设置?您是否尝试过通过终端/控制台或 gui 连接?
  • 我不是 100% 确定它在 3306 上,但我进行了正常安装,标准端口是 3306。我可以使用 phpmyadmin 和 putty 控制台连接到我的数据库。顺便说一句,我将本教程用于 Maria DB 和 phpmyadmin zap-hosting.com/guides/docs/de/vserver_linux_mariadbinstall,另一个用于 express 和 nodejs
  • 我还确保在 ionos 界面中打开了 3306 端口...但没有帮助...

标签: javascript sql node.js mariadb port


【解决方案1】:

所以我找到了解决问题的方法。

我检查了我的 MariaDB 服务是否正在运行,不,它不是 ^^

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多