mysql报错 1862-your password has expired. To log in you must change it using aclient that suppirts exp

mysql5.7.4版本及以后的版本。
1、先确认root账户密码是否过期,直接用root用户登录mysql就可以知道密码是否过期,忘记root密码的话也可以用已过期操作进入mysql
2、未过期操作:
(1)在mysql安装目录bin目录下打开cmd,输入:
mysql -u root -p
回车,输入密码进入数据库,
(2)查看所有数据库:
show databases;
进入mysql库:
use mysql;
(3)修改过期用户密码:
update mysql.user set authentication_string=password('123456') where user='sa';
(4)修改用户password_expired为N:
update user set password_expired='N' where user='sa';
(5)修改成功之后刷新权限:
flush privileges;
退出当前数据库登录:
exit;
(6)输入mysql -u sa -p回车,输入密码是否能登陆成功,如果还是报错1862-your password has expired.,重新用root用户登录数据库,设置全局密码过期:
SET GLOBAL default_password_lifetime = 0;
默认为0,default_password_lifetime值为有效天数,
禁用密码过期:
ALTER USER 'sa'@'localhost' PASSWORD EXPIRE NEVER;
此处需注意sa用户权限,如果为localhost上述命令才能执行成功,如果sa用户为%权限,那么命令需要改成:
ALTER USER 'sa'@'%' PASSWORD EXPIRE NEVER;
刷新权限:
flush privileges;
退出重新用sa用户登录。

3、root账户密码过期或者忘记密码操作
(1)在my.ini配置文件[mysqld] 下添加配置,skip-grant-tables,意思是在启动mysql时不启动授权表grant-tables,添加配置之后重启mysql服务生效
(2)接下来与未过期操作一致,在cmd中输入mysql -u root直接进入mysql
(3)修改完成之后把skip-grant-tables配置删除,重启mysql服务

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值