侧边栏壁纸
博主头像
与晚风述往事博主等级

万般皆下品,唯有读书高。

  • 累计撰写 149 篇文章
  • 累计创建 29 个标签
  • 累计收到 7 条评论

目 录CONTENT

文章目录

ORA-28007:无法重新使用口令

与晚风述往事
2021-11-30 / 0 评论 / 0 点赞 / 159 阅读 / 918 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2021-11-30,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

错误信息

【汉】ORA-28007:无法重新使用口令
【英】ORA-28007: the password cannot be reused

环境介绍

操作系统 数据库版本 备注
CentOS 7 Oracle 11G

在修改用户的密码时报错。
image.png

报错的原因主要是有配置密码的profile文件,其主要是一些资源限制等参数。跟本次报错有关的参数是:

  • PASSWORD_REUSE_TIME 设置密码在多少天之后才能重新使用
  • PASSWORD_REUSE_MAX 设置密码在修改过多少次之后才能重新使用

这两个参数默认值都是不限制。
Oracle会将你密码变更记录都储存到system表空间的数据字典表(SYS下的系统表)中,然后根据这两个参数的值来增加或删除记录。

解决方法需要区分两种情况。第一种就是按配置得参数,继续修改不同的密码。再者就是先暂时将策略改为不限制(或永久修改限制),等密码配置后,再将策略改回去。

1、检查用户使用的profile

select PROFILE from dba_users where username='TEST1';

image.png
从图上可以看出,TEST1用户使用的策略是默认的策略。

2、检查用户使用的profile参数

select * from dba_profiles where profile='DEFAULT';

image.png
从图上可以看出,TEST1用户如果想重用密码,至少要改过3次密码并且要设置的密码跟之前的密码至少间隔60天才行。

3、修改profile参数为不限制

alter profile default limit PASSWORD_REUSE_TIME unlimited;
alter profile default limit PASSWORD_REUSE_MAX unlimited;

4、修改密码

我这里是演示案例,密码这么简单就无所谓了。

alter user test1 identified by "orcl";

image.png

5、再次修改策略

出于安全考虑,建议非特殊情况下,不要私自修改DBA配置的策略。

alter profile default limit PASSWORD_REUSE_TIME 60;
alter profile default limit PASSWORD_REUSE_MAX 3;
0

评论区