分享

oracle密码过期问题

 昵称17908933 2014-06-06
告警信息:oracle 11g 密码过期
ERROR: ORA-28002: the password will expire within 1 days


1.可以在dba_users 中查找过期的时间

SQL> select USERNAME,EXPIRY_DATE,EXPIRY_DATE,CREATED,PROFILE from dba_users where username='WJLCN';

USERNAME                       EXPIRY_DATE EXPIRY_DATE CREATED     PROFILE
------------------------------ ----------- ----------- ----------- ------------------------------
WJLCN                          2013/3/17 1 2013/3/17 1 2012/3/15 2 DEFAULT


2.查看对应profile 的过期时间
SQL> SELECT * FROM dba_profiles WHERE profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';

PROFILE                        RESOURCE_NAME                    RESOURCE_TYPE LIMIT
------------------------------ -------------------------------- ------------- ----------------------------------------
DEFAULT                        PASSWORD_LIFE_TIME               PASSWORD      180

3.修改PASSWORD_LIFE_TIME 为 UNLIMITED
SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

Profile altered


4.修改后,对未被提示ORA-28002告警用户立即生效
SQL> select USERNAME,EXPIRY_DATE,EXPIRY_DATE,CREATED,PROFILE from dba_users where username='WJLCN';

USERNAME                       EXPIRY_DATE EXPIRY_DATE CREATED     PROFILE
------------------------------ ----------- ----------- ----------- ------------------------------
WJLCN                                                  2012/3/15 2 DEFAULT
 
5.对于收到ORA-28002告警信息的,还是需要修改一次密码,可以通过用户直接连接后,会提示修改。或者直接由数据库管理员去修改。

/****************************************************************************/
本地开发库,oracle 11i,默认有个用户是 "password expire",没用一会就被lock掉了。

可以通过以下方式修改默认的profile设置
以 sys 用户登录
ALTER PROFILE DEFAULT LIMIT
FAILED_LOGIN_ATTEMPTS UNLIMITED
PASSWORD_LIFE_TIME UNLIMITED;
 
NOAUDIT ALL;
DELETE FROM SYS.AUD$;

然后修改该用户的密码,重新登录并设置新的password,即搞定。
/****************************************************************************/

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多