【发布时间】:2020-02-07 15:20:12
【问题描述】:
安装新版本的 xampp 时,我可以通过终端将我的 js 脚本连接到 MySQL。
const mysql = require('mysql');
let con = mysql.createConnection({
host: "localhost",
user: "root",
password: "",
port:3307
});
con.connect(function(err) {
if (err) throw err;
console.log("Connected!");
});
PS C:\login> node connection.js
Connected!
我一直在尝试另一个我有凭据的数据库,但是当您在 con 对象中有密码属性时,这似乎是一个问题。它不会与密码连接:P 我在这里做错了什么?
C:\login\connection.js:13
if (err) throw err;
^
Error: connect ECONNREFUSED 127.0.0.1:3306
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1134:16)
--------------------
at Protocol._enqueue (C:\login\node_modules\mysql\lib\protocol\Protocol.js:144:48)
at Protocol.handshake (C:\login\node_modules\mysql\lib\protocol\Protocol.js:51:23)
at Connection.connect (C:\login\node_modules\mysql\lib\Connection.js:116:18)
at Object.<anonymous> (C:\login\connection.js:12:7)
at Module._compile (internal/modules/cjs/loader.js:955:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:991:10)
at Module.load (internal/modules/cjs/loader.js:811:32)
at Function.Module._load (internal/modules/cjs/loader.js:723:14)
at Function.Module.runMain (internal/modules/cjs/loader.js:1043:10)
at internal/main/run_main_module.js:17:11 {
errno: 'ECONNREFUSED',
code: 'ECONNREFUSED',
syscall: 'connect',
address: '127.0.0.1',
port: 3306,
fatal: true
}
【问题讨论】:
-
您必须启用它才能以root用户身份无密码连接,请查看support.rackspace.com/how-to/…
-
你确定你的mysql服务器正在运行吗?你可以使用
mysql -u root -h localhost -p通过终端登录吗? -
所以我尝试连接的数据库有另一个用户名,它不是 root。 const mysql = 要求('mysql'); let con = mysql.createConnection({ host: "localhost", user: "something", password: "something", port:3306 }); con.connect(function(err) { if (err) throw err; console.log("Connected!"); });然后我收到错误消息。
-
TCP 连接被拒绝,因此我们不在身份验证阶段。而是ip或port都错了。检查您的 mySQL 是否正在运行,端口是否正确
标签: javascript mysql node.js phpmyadmin