繁体   English   中英

无法连接到 MySql 数据库:错误 1045 (28000):用户“root”@“localhost”的访问被拒绝

[英]Cannot connect to MySql database: ERROR 1045 (28000): Access denied for user 'root'@'localhost'

有很多类似的问题,但没有一个能解决我的问题。

我以前在大学项目中使用过 MySql,所以我认为旧的可能正在禁用任何新的,但我不记得他们的密码并且无法删除它们。

我已经尝试多次更改 env PATH 变量,但没有任何效果。 当前是: PATH=/Library/Frameworks/Python.framework/Versions/3.7/bin:/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/TeX/texbin:/Library/Frameworks/Python.framework/Versions/3.7/bin:/opt/local/bin:/opt/local/sbin:/usr/local/mysql/bin/

我也无数次尝试过 mysql -u root 。 代码如下:

var mysql = require('mysql');

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

con.connect(function(err) {
    if (err) throw err;
    console.log("Connected!");
    con.query("CREATE DATABASE ishopDB", function (err, result) {
      if (err) throw err;
      console.log("Database created");
    });
  });

我下载了 MySql,活动实例总是红色。

从 MySQL 5.7 开始,第一次安装 root 时不再有空密码。 因此,如果您的代码以前在另一个 MySQL 安装上运行,并且您刚刚在空机器上安装了 5.7(或更高版本),这将解释您的问题。

当您安装 MySQL 时,安装可能因操作系统而异:MacOS、Windows 和 Red Hat/CentOS 将为您生成密码,而 Debian 将要求您提供密码。 另请参阅此处显示/存储密码的位置:https://dev.mysql.com/doc/refman/8.0/en/default-privileges.ZFC35FDC70D5FC69D269EZ883A822C7A53

暂无
暂无

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

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