Access denied for user ‘root‘@‘localhost‘ (using password: YES)

问题描述

登录阿里云Linux云服务器上的mysql时报错:

mysql -uroot -pxxxxx
报错:Access denied for user ‘root‘@‘localhost‘ (using password: YES)

报错原因

大佬来解释一下

解决方法

  1. 如下操作跳过密码验证,先登录进MySQL
vim /etc/my.cnf

图中位置添加

skip-grant-tables 

在这里插入图片描述
重启MySQL服务

systemctl restart mysqld

此时直接输入 mysql 就可以进入到mysql中,不需要输密码了

  1. 重设root账户密码
    若直接修改密码会报错,提示不能修改密码。
The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement。

所以在修改密码前要刷新下权限表:

mysql> flush privileges;

然后再修改密码:

ALTER USER 'root'@'%' IDENTIFIED BY '新密码';

密码修改成功后直接退出。把配置文件中加的skip-grant-tables注释了,重启下MySQL服务。再正常登录即可。

PS:如果登录进MySQL后发现root用户没了,就新建一个。

mysql> create user 'root'@'%' identified with mysql_native_password by 'MyNewPass@123';
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值