现象描述:
登陆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 <原来的密码> |
|