解决找回mysql数据库密码和密码过期问题

来自:网络
时间:2024-08-28
阅读:
免费资源网 - https://freexyz.cn/

今天弄前后端项目的时候发现数据库查询错误,才发现打印出来错误如下:

“msg”: “ER_ACCESS_DENIED_ERROR: Access denied for user ‘root’@‘localhost’ (using password: YES)”

是数据库密码错误了,发现记忆出错了,忘掉了数据库密码

查看密码

使用某个可视化软件,执行下列sql语句

可以看到所有的用户和对应用户的密码

select *from mysql.user;

解决找回mysql数据库密码和密码过期问题

把密码复制去一个解密的md5网站md5解密网站,就可以知道数据库密码了

密码期效已过期

执行sql查询又报错误如下:

ER_MUST_CHANGE_PASSWORD_LOGIN: Your password has expired. To log in you must change it using a client that supports expired passwords."

这个好解决。

  • 方法一:可以在上述可视化软件中把 Y 改成 N 执行 Apply 即可
  • 方法二:使用sql语句(可以在命令行执行,也可以在sql中执行)

假设是sql语句,直接执行

set password for root@localhost = password('123456');

这样重新修改密码(可以为原密码)密码会重新计算时间,就不过期啦

假设是命令行,进入mysql 对应的bin 目录,文件路径输入cmd打开控制台,输入mysql -u root -p,输入第一步已经知道的密码

解决找回mysql数据库密码和密码过期问题

控制台输入

ALTER USER USER() IDENTIFIED BY '123456'; #123456为密码

再输入修改密码的字段(可以为原密码)

set password for root@localhost = password('123456');

但是不论方法一还是方法二需要重启mysql或者可视化的工具台再生效

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

免费资源网 - https://freexyz.cn/
返回顶部
顶部