繁体   English   中英

Mysql 错误:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

[英]Mysql error: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

这让我发疯...当我尝试登录到 Mysql 时。

user-MacBook:~ user$ cd /usr/local/mysql/bin
user-MacBook:bin user$ ./mysql -u root -p
Enter password: 
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
user-MacBook:bin user$ ./mysql
ERROR 1045 (28000): Access denied for user 'user'@'localhost' (using password: NO)

有人会帮忙吗? 谢谢!!

我想,你输入了错误的密码......在我的情况下,如果我输入了错误的密码,就像这样表示。

jonghan@jonghan-MS-7817:~$ /usr/bin/mysql -uroot -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

在第二种情况下是同样的问题。

如果您忘记了密码,我建议您重置您的 mysql root 密码。

首先,你必须停止mysql服务。

#sudo service mysql stop

其次,在 my.conf 或 my.cnf 文件中添加“skip-grant-tables”。

就我而言(MySQL v5.7.17),mysqld.cnf 位于“/etc/mysql/mysql.conf.d”中。

几乎 my.conf/my.cnf 文件是这样显示的。

[mysqld]
user         = mysql
pid-file     = /var/run/mysqld/mysqld.pid
socket       = /var/run/mysqld/mysqld.sock
port         = 3306
basedir      = /usr
datadir      = /var/lib/mysql
tmpdir       = /tmp
lc-messages-dir = /usr/share/mysql

skip-external-locking

skip-grant-tables         /*** You Add this code! ***/

接下来,重启mysql服务。

#sudo service mysql start

并且,打开你的 mysql 服务。 在你的情况下,

$ cd /usr/local/mysql/bin
$ ./mysql -u root

然后,您无需身份验证即可登录。

接下来,您应该更改“root”的密码。

mysql> UPDATE user SET password=PASSWORD('yourpassword') WHERE user='root';

毕竟恢复my.conf/my.cnf/mysqld.cnf等。 (删除'skip-grant-tables')

最后重启mysql服务。

$ sudo service mysql restart

如果按照这些步骤仍然无法访问 mysql,我建议您重新设置 Mysql。

谢谢!

暂无
暂无

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

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