ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: N

以mysql Server version: 8.0.17 Source distribution为例

 

1.重置密码的第一步就是跳过MySQL的密码认证过程,方法如下:

vim  /etc/my.cnf.d/mysql-server.cnf

2.在文档内搜索mysqld定位到[mysqld]文本段:

在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程,如下图所示:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: N

保存文档并退出

3.接下来我们需要重启MySQL:

  systemctl restart mysqld

3.接下来我们验证MySQL服务状态:

 systemctl status mysqld

4.重启之后输入mysql即可进入mysql。

 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: N

5.接下来就是用sql来修改root的密码

mysql> update user set password=password('你的新密码') where user='root';
mysql> flush privileges;
mysql> quit

到这里root账户就已经重置成新的密码了。

5.编辑mysql-server.cnf,去掉刚才添加的内容,然后重启MySQL。大功告成!

上一篇:【Docker】 使用Docker在阿里云上部署 MySQL 及 Redis 云数据库。


下一篇:Found option without preceding group in config file /etc/my.cnf at line 1!