适用范围:各业务平台Oracle11g数据库
数据库软件:Oracle
故障现象:
Oracle11g中默认在default概要文件中设置了“PASSWORD_LIFE_TIME=180天”,因为用户密码过期,会造成用户无法登陆Oracle数据库。
密码已过期时,sqlplus连接数据库提示:
ERROR:ORA-28001:the password has expired
密码即将过期时,sqlplus连接数据库提示:
ERROR:ORA-28002: the password will expirewithin 7 days
检查方法:
1、检查数据库用户profile,一般是default
sql>SELECTusername,PROFILE FROM dba_users;
2、查看指定概要文件(如default)的密码有效期设置,默认是180天
sql>SELECT * FROM dba_profiles s WHEREs.profile=‘DEFAULT‘ AND resource_name=‘PASSWORD_LIFE_TIME‘;
3、将密码有效期由默认的180天修改成“无限制”:
sql>ALTER PROFILE DEFAULT LIMITPASSWORD_LIFE_TIME UNLIMITED;
4、检查确认,
sql>SELECT * FROM dba_profiles s WHEREs.profile=‘DEFAULT‘ AND resource_name=‘PASSWORD_LIFE_TIME‘;
PROFILE RESOURCE_NAME RESOURCE LIMIT
-------------------------------------------------------------- ------------------------------------------------
DEFAULT PASSWORD_LIFE_TIME PASSWORD UNLIMITED