ORA-28002/ORA-28000 解决11g 密码过期、密码输错锁住用户问题--修改 default profil
ORA-28002/ORA-28000 解决11g 密码过期、密码输错锁住用户问题--修改 default profile
一、ORA-28002: the password will expire within 7 days
11G中默认用户密码每三个月(180天)需要修改一次。profile中定义了该属性值。以下步骤就是将该属性值设为unlimited,即密码永不过期。
1、查看用户使用的profile
SQL> select username,profile from dba_users;
USERNAME PROFILE
------------------------------------------------------------------------------------------------------------------------
SYS DEFAULT
SYSTEM DEFAULT
SHARON DEFAULT
GGS DEFAULT
TEST DEFAULT
OUTLN DEFAULT
MGMT_VIEW DEFAULT
FLOWS_FILES DEFAULT
MDSYS DEFAULT
ORDSYS DEFAULT
EXFSYS DEFAULT
….
2、查看profile的密码有效期
SQL> SELECT * FROM dba_profiles s WHEREs.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';
PROFILE RESOURCE_NAME RESOURCE_TYPE LIMIT
------------------------------ -------------------- ----------
DEFAULT PASSWORD_LIFE_TIME PASSWORD 180
3、修改密码有效期(不受限)
SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIMEUNLIMITED;
Profilealtered.
4、重置用户密码(原密码)
SQL> alter user sharon identified by Oracle; --不用换新密码
Useraltered.
二、ORA-28000 the account is locked
11g的defaultprofile中规定了输错几次密码就会将用户锁住,以下步骤就是将该属性值设为UNLIMITED,即无论输错多少次密码都不会锁住用户。
1、查看用户的proifle是哪个,,一般是default:
SQL> select username,profile from dba_users;
USERNAME PROFILE
------------------------------------------------------------------------------------------------------------------------
SYS DEFAULT
SYSTEM DEFAULT
SHARON DEFAULT
GGS DEFAULT
TEST DEFAULT
OUTLN DEFAULT
MGMT_VIEW DEFAULT
FLOWS_FILES DEFAULT
MDSYS DEFAULT
ORDSYS DEFAULT
EXFSYS DEFAULT
….
2、查看指定概要文件(如default)的密码有效期设置:
SQL> SELECT * FROM dba_profiles s WHEREs.profile='DEFAULT' AND resource_name='FAILED_LOGIN_ATTEMPTS';
PROFILE RESOURCE_NAME RESOURCE_TYPE LIMIT
----------------------------------- -------------------- ----------
DEFAULT FAILED_LOGIN_ATTEMPTS PASSWORD 10
--输错密码10次就会把用户锁住
3、将尝试登录失败次数由默认的10次修改成“无限制”:
SQL> ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTSUNLIMITED;
Profilealtered.
4、将已锁的用户解锁
SQL> alter user sharon identified by oracle accountunlock;
Useraltered.