[英]Error: connect ECONNREFUSED 127.0.0.1:3306 on MySQL, Heroku, and Node.js
[英]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.