我们平常使用oracle 10g 应该不会遇到此问题,因为oracle 10g 默认的密码有效期为“UNLIMITED”。
而 oracle 11g 则默认为“180”天。
所以密码在快要到达180天时,登录时会提示:ERROR:ORA-28002: the password will expire within 5 days .
通常处理办法:
--查看用户的proifle。默认都为 DEFAULT
SELECT username,PROFILE FROM dba_users WHERE username='用户名' ;
--查看 profile为DEFAULT 的密码设置有效期
SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';
--将密码有效期更改为无限期“UNLIMITED”
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
修改完成后,如果已经被提示过的用户,必须重新设置一次密码才可以,未被提示过的用户则不再被提示。
用sys登录后,修改某个用户的密码:
ALTER user 用户 IDENTIFIED BY 原密码
至此,就OK了。