繁体   English   中英

连接到 mysql 时出现错误“connect ECONNREFUSED 127.0.0.1:3306”

[英]Getting error "connect ECONNREFUSED 127.0.0.1:3306" while connecting to mysql

我是 nodeJs 的新手,正在尝试开发我的第一个应用程序。 我通过 npm 安装了 mysql package,它安装成功了,我可以在 package.json 中看到它的成功入口。 但是,当我尝试连接到 mysql 服务器时,它给我这个错误connect ECONNREFUSED 127.0.0.1:3306 我在 StackOverflow 上搜索了这个问题,其他遇到同样问题的用户通过在配置 object 中添加条目socketPath: '/var/run/mysqld/mysqld.sock'来运行它。但是当我将它添加到我的配置 object,我收到一个新错误connect ENOENT /var/run/mysqld/mysqld.sock

这是我尝试连接到服务器的代码

var express = require('express');
var router = express.Router();
var mysql = require('mysql');
var connection = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: '',
    database: 'blog',
    socketPath: '/var/run/mysqld/mysqld.sock'
});

connection.connect();
module.exports = router;

我使用的是 Windows 机器,之前通过 XAMPP package 安装了 mysql。这可能是连接失败的原因吗?

您是否启动了 XAMPP 服务器?

connect ECONNREFUSED 127.0.0.1:3306 -- 当您未启动 XAMPP 服务器时出现此错误。

请删除 socketPath 并尝试一次。

当我没有启动 XAMPP 服务器时,我遇到了同样的问题。

就我而言,是造成问题的 docker 网络。

我添加到我的 docker-compose 文件中: network_mode: "host"

查看输入的密码,一般应该是“password”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM