mysql设置密码过期,及密码过期处理

mysql 5.6及以上版本开始可以设置密码过期,我本人用的是5.6.21,可以通过查看mysql.user里面的password_expired字段知道是否过期(拉到最后面)

select * from mysql.user;

在这里插入图片描述
N为不过期,Y为过期。默认为N不过期。

将密码设置为过期的语句为:alter user ‘用户名’@‘host’ password expire; 如:

alter user 'root'@'localhost' password expire;

这时候输入

select * from mysql.user;

查看root的password_expired字段已经变为Y,再重新登录时会发现已经连接不上,提示密码过期。解决办法是修改登录密码就可以(可以修改为原来的密码):
1、打开cmd,cd进入mysql安装的bin目录,我的目录是:C:\Program Files\MySQL\MySQL Server 5.6\bin,所以输入:cd C:\Program Files\MySQL\MySQL Server 5.6\bin,回车

2、输入 mysql -u root -p,回车,输入mysq密码进行登录l

3、修改密码,语句(记得要加分号;再回车):

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

如图:
在这里插入图片描述

这时候重新连接mysql发现可以连接上了,查看mysql.user表发现root的password_expired已经改为N。

延伸:

查看网上的说法,可以修改过期的天数(多少天过期),以天为单位,如:

ALTER USER ‘root’@‘localhost' PASSWORD EXPIRE INTERVAL 30 DAY;

或者修改密码永不过期,如:

ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;

或这种方式修改密码不过期:

SET GLOBAL default_password_lifetime = 0;

但是这些都是从MySQL 5.7.4版本开始才可以设置,我这里设置的时候提示出错。

参考:https://blog.csdn.net/y100100/article/details/79034638

参考: https://blog.csdn.net/huang800336/article/details/49157235?utm_medium=distribute.pc_relevant.none-task-blog-baidujs-5

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值