故障現象 Oracle Database 11g 數據庫普通用戶登錄時提示 ORA-28002: the password will expire within 7 days [11:01:00oracle@dvd db_1]$sqlplus wang/oracle SQL*Plus: Release 11.2.0.1.0 Production on Fri Nov 16 11:01:23 2012 Copyright (c) 1982, 2009, Oracle. All rights reserved. ERROR: ORA-28002: the password will expire within 7 days Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production With the OLAP and Data Mining options wang@SUN>
故障原因 Oracle 11G 普通用戶有個180天的缺省密碼周期,當快過期的時候即會出現此提示;
解決辦法 查看當前用戶對應profile、對應密碼周期 select * from dba_profiles where profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME'; alter profile default limit password_life_time unlimited; SELECT username,PROFILE FROM dba_users where username like upper('USER'); sys@SUN> SELECT username,PROFILE FROM dba_users where username like upper('USER'); Enter value for user: wang old 1: SELECT username,PROFILE FROM dba_users where username like upper('USER') new 1: SELECT username,PROFILE FROM dba_users where username like upper('wang') USERNAME PROFILE ------------------------------ ------------------------------ WANG DEFAULT --查詢到該用戶對應的Profile文件為 DEFAULT sys@SUN> set lines 222 sys@SUN> col PROFILE for a20 sys@SUN> col RESOURCE_NAME for a20 sys@SUN> col RESOURCE_TYPE for a20 sys@SUN> col LIMIT for a20 sys@SUN> 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 --查詢到該profile對應的密碼生命周期配置為180天 修改當前用戶對應profile對應對應密碼周期 sys@SUN> alter profile default limit password_life_time 365; Profile altered. --修改該profile對應的密碼生命周期配置為365天 sys@SUN> alter profile default limit password_life_time unlimited; Profile altered. --修改該profile對應的密碼生命周期配置為 無限制