【问题标题】:Node Mysql connection refused Errors: ECONNREFUSED, ETIMEDOUT, ENOENT节点 Mysql 连接被拒绝 错误:ECONNREFUSED、ETIMEDOUT、ENOENT
【发布时间】:2022-01-06 17:53:09
【问题描述】:

我创建了一个应用程序,它从 HTML 表单中获取输入并将其插入 MySQL 数据库。在我开始为我的学习项目使用 Docker、SSH 和 NGINX 之前,一切都运行良好。

这是我的 database.js 文件:

const mysql = require('mysql2');

const con = mysql.createConnection({
    host: 'localhost',
    user: 'myusername',
    password: 'password',
    database: 'mydb',
    port: 3000,
    socketPath: '/var/run/mysqld/mysqld.sock'
});

con.connect(function(err) {
    if (err) throw err;
    console.log('Database connected!');
});

module.exports = con;

现在,每当我运行服务器时

nodemon index.js

服务器启动正常,但出现 database.js 错误:

    database.js:13
    if (err) throw err;
             ^

Error: connect ENOENT /var/run/mysqld/mysqld.sock
    at PipeConnectWrap.afterConnect [as oncomplete] (net.js:1107:14)

如果我删除 pathSocket,我会收到以下错误:

database.js:12
    if (err) throw err;
             ^

Error: connect ECONNREFUSED 127.0.0.1:3000
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1107:14)

如果我删除端口,则会出现以下错误:

database.js:11
    if (err) throw err;
             ^

Error: connect ECONNREFUSED 127.0.0.1:3306
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1107:14)

我在 Internet 上到处寻找并尝试了一切,我什至卸载了 Ubuntu 发行版(我使用的是带有 WSL 2 的 Win 10)并重新安装了它。但问题依然存在。

--

我相信这是端口的问题,所以我是这个网络大惊小怪的新手,我真的不知道该怎么办。

【问题讨论】:

    标签: mysql node.js


    【解决方案1】:

    错误Error: connect ENOENT /var/run/mysqld/mysqld.sock 指的是您文件的位置。 ENOENT 表示no such a file or directory

    【讨论】:

      猜你喜欢
      • 2013-08-29
      • 1970-01-01
      • 1970-01-01
      • 2017-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多