mysql5.7数据库用户密码过期(your password has expired)

mysql5.7数据库用户密码过期(your password has expired),第1张

注明mysql版本:V5.7.10

请使用root用户命令行登录(命令行登录不存在过期)。

登陆后直接输入 >set password = password(‘123456’)

再次使用客户端访问,发现可用。

这种情况需要修改指定用户的password。

以root@% 为例 >set password for 'root'@'%' = password('123456')

再次使用客户端访问,发现可用。

1、以下这种方式不能解决密码过期问题

update mysql.user set authentication_string=password('123456') where user='root' and Host = '%'

2、修改password_last_changed不能解决密码过期问题。

3、mysql早前的版本user表有password字段,5.7为authentication_string。

4、不需要重启mysql服务器。

5、提醒一下,root@localhost和root@%不是同一个用户。

查看用户信息的sql如下,方便读者复制:

select host,user,password_last_changed from mysql.user

1、进入sqlplus模式

sqlplus / as sysdba

2、查看用户密码的有效期设置(一般默认的配置文件是DEFAULT)

SELECT * FROM dba_profiles WHERE profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME'

3、将密码有效期由默认的180天修改成“无限制”,修改之后不需要重启动数据库,会立即生效

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED 

4、帐户再改一次密码

alter user 用户名 identified by 原密码

5、使用修改后的用户登录,如果报“ORA-28000:用户已被锁”,解锁

alter user db_user account unlock


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9603524.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存