现象描述:
登陆oracle 11g
提示ERROR:ORA-28002: the password will expire within 7 days
告警信息:
ERROR: ORA-28002: the password will expire within 7 days
原因分析:
代码如下 | 复制代码 |
SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME'; oracle11g |
中默认在default概要文件中设置了“PASSWORD_LIFE_TIME=180天”。 而10g?之前版本的Oracle仍默???NLIMITED
解决办法:
1、查看用户的proifle是那个,一般是default:
代码如下 | 复制代码 |
sql>SELECT username,PROFILE FROM dba_users where username='INFDB' ; |
2、查看指定概要文件(如default)的密码有效期设置:
代码如下 | 复制代码 |
sql>SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME'; |
3、将密码有效期由默认的180天修改成“无限制”:
代码如下 | 复制代码 |
sql>ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; |
4、修改后,还没有被提示ORA-28002警告的用户不会再碰到同样的提示;
已经被提示的用户必须再改一次密码,举例如下:
代码如下 | 复制代码 |
$sqlplus / as sysdba sql> alter user wapgw identified by <原来的密码> |