Navicat for MYSQL连接数据库密码过期问题

Navicat for MYSQL连接数据库密码过期问题

问题提示:1862 - Your password has expired.To log in you must change it using a client that suppor

问题截图:

 

解决办法:Win+R输入service.msc,然后找到MYSQL57,在左侧找到停止此服务;

停止后,右键点击MYSQL57,选择属性,将可执行文件的路径复制下来,C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqld.exe --defaults-file="C:\ProgramData\MySQL\MySQL Server 5.7\my.ini" MySQL57

 

路径找到后,先放着,然后,Win+R键,输入cmd,进入管理员后台,然后输入 cd C:\Program Files\MySQL\MySQL Server 5.7\bin,进入mysql的bin目录,然后输入mysqld --defaults-file="C:\ProgramData\MySQL\MySQL Server 5.7\my.ini" --skip-grant-tables,使数据库处于取消密码登录状态,假如此时提示mysqlp不属于内部命令的话,那么就要运行mysqlp --install,提示Service successfully installed,就算成功了。然后关闭刚刚打开的管理员后台,重新进入bin目录,运行mysqld --defaults-file="C:\ProgramData\MySQL\MySQL Server 5.7\my.ini" --skip-grant-tables就没问题了,运行成功的状态是红框部分是个闪烁的小横杠。

 

 

上面那个管理员后台不关闭的状态下,再打开一个新的后台(Win+R 之后输入cmd),然后输入mysql -uroot -p,让输入密码的时候直接回车

 

进入之后,输入flush privileges;刷新MySQL的系统权限相关表,这里有三种方法(粘贴复制到后台管理系统的时候,记得把单引号都用英文单引号替换一下):

第一种:set password=password (‘设置的密码’);+回车,用于设置密码,假如想要固化密码,让其永久不失效,那么就可以输入ALTER USER ‘root’@‘localhost’ PASSWORD EXPIRE NEVER,后面几种方法也是可以运行这个方法的。

第二种:ALTER USER root@’localhost’ IDENTIFIED BY ‘设置的密码,

第三种:UPDATE mysql.user SET authentication_string = PASSWORD(’设置的密码’) WHERE User = root’ AND Host = localhost’;

 

显示OK就成功了,最后flush privileges;刷新一下MySQL的系统权限相关表,就可以用更改后的密码登录了。登录成功后,在Navicat for MYSQL上,输入更改后的密码,测试连接,连接成功就可以使用了。

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值