Day 3699 Oracle 11g 密码过期

某个项目从2014年至今已经快两年了,一直拖拖拉拉没有做完,相关的APP、服务端也都乱七八糟的,真是被坑了。

早上领导突然说要看这套项目的情况,于是从抽屉底扒拉出我们部门配发的唯一平板电脑:南都PAI F8(就是某山寨配置却售价¥800的东西)。安装APK后尝试下载数据,连不上,开后台也打不开,寻思是数据库又掉线了,远程过去重启Oracle 11g和服务端,居然也不行,最后去扒log发现这么一句:

java.sql.SQLException: ORA-28001: the password has expired

上网查了一下,Oracle 11g默认的密码有效期是180天,你说这得多久没人管这个项目了吧。

总之处理方法如下:

1.以Oracle或sysdba登录DB系统,首先查询当前有效期:

select * from dba_profiles where profile=’DEFAULT’ and resource_name=’PASSWORD_LIFE_TIME’;

输出没有复制,总之可以看到LIMIT字段值为180,意为密码有效期是180天。

2.修改有效期为无限:

alter profile default limit password_life_time unlimited;

修改后再次执行第一步的查询,LIMIT应变为:UNLIMITED。

3.对用户密码进行修改,否则用户仍然会处于密码已过期状态:

alter user USERNAME identified by NEWPASSWORD;

如果用户被锁住:alter user USERNAME identified by NEWPASSWORD account unlock;

说点题外话:写题目的时候发现已经需要用五位数了,倒查了一下发现今年2月22日是我在这世上的第10000天,艾玛怎么这么二……

注:所有评论将在审核通过后显示,请不要在评论内容的任何位置出现链接,否则您的评论将被自动移入回收站,且永远不会被复审。

All comments will be available after being manually reviewed, please do not include any links anywhere in your comment, otherwise your comment will be automatically deleted and are not eligible for review.

3 条评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注