繁体   English   中英

无法使用NodeJS建立与MySQL的连接

[英]Cannot establish connection to MySQL with NodeJS

我正在尝试使用NodeJS连接到MySQL。 这是我用于连接的代码:

var mysql = require('mysql');

var con = mysql.createConnection({
  host: "localhost",
  user: "user",
  password: "pass"
});

con.connect(function(err) {
    if (err){
        console.error('error connectiong'+ err.stack);
        return;
    }

console.log('Connected as Id' + connection.threadId);

});

非常简单,应该可以,但是不能。 我尝试以下方法来解决此问题,但运气不好:

  • 我没有帮助就进入了港口:3306;
  • 删除密码并保留密码:''空,但没有结果
  • 在所有其他特权之上为用户添加了GRANT特权
  • 更改后重置XAMPP

但是我仍然收到相同的消息:

出现错误的图片

我不明白为什么我无法连接。 我检查了类似这样的其他问题,尝试了一些解决方案,但它们没有起作用。 有任何想法吗? 谢谢。

如错误消息所述:用户'nebojsa82'@'localhost'访问被拒绝。 这意味着该用户没有特权,或者该用户的密码不正确。

如果我是您,请尝试以下操作:

mysql -h localhost -u nebojsa82 -p

然后输入密码,看看是否可以连接。 我很确定您将无法连接,并且会出现相同的拒绝访问错误。

确保您正在使用的用户还具有所需数据库的至少READ特权。

如果您具有mysql根访问权限,则可以执行以下操作:

mysql> create database test;
mysql> create user 'test'@'localhost' identified by 'test123';
mysql> grant all on test.* to 'test'@'localhost';
mysql> flush privileges;

那应该创建一个空的数据库测试 ,一个密码为test123的mysql用户测试 ,并且该用户具有测试数据库的全部特权。 然后,牢记这些细节,尝试使用上面提到的nodejs代码进行连接。

暂无
暂无

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

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