基于oracle user locked(timed) 故障处理
(2010-06-30 19:30:59) SQL> connect scott/scott
ERROR:
ORA-01017: invalid username/password; logon denied
SQL> connect scott/scott
ERROR:
ORA-28000: the account is locked
表明:oracle 中 scott用户因密码不对,10次以后,就被locked。
SQL> select account_status,lock_date,profile from dba_users where username='SCOTT';
ACCOUNT_STATUS
-------------------------------- -------------------- ------------------------------
LOCKED(TIMED)
这样,表明再添加oracle session时,就报错,无法连接上去。
故障解决:
SQL>
RESOURCE_NAME
-------------------------------- ------------- ----------------------------------------
COMPOSITE_LIMIT
SESSIONS_PER_USER
CPU_PER_SESSION
CPU_PER_CALL
LOGICAL_READS_PER_SESSION
LOGICAL_READS_PER_CALL
IDLE_TIME
CONNECT_TIME
PRIVATE_SGA
FAILED_LOGIN_ATTEMPTS
PASSWORD_LIFE_TIME
PASSWORD_REUSE_TIME
PASSWORD_REUSE_MAX
PASSWORD_VERIFY_FUNCTION
PASSWORD_LOCK_TIME
PASSWORD_GRACE_TIME
表明: 10次以后,就 failed_login_attempts 就报错,锁定用户。
需要修改成:unlimited
sql> alter profile default limit FAILED_LOGIN_ATTEMPTS unlimited;
或修改成:次数比较大:100000
sql>alter profile default limit FAILED_LOGIN_ATTEMPTS 100000;
然后再查看资源情况:
SQL> SELECT resource_name,resource_type,limit FROM dba_profiles WHERE profile='DEFAULT';
RESOURCE_NAME
-------------------------------- ------------- ----------------------------------------
COMPOSITE_LIMIT
SESSIONS_PER_USER
CPU_PER_SESSION
CPU_PER_CALL
LOGICAL_READS_PER_SESSION
LOGICAL_READS_PER_CALL
IDLE_TIME
CONNECT_TIME
PRIVATE_SGA
FAILED_LOGIN_ATTEMPTS
PASSWORD_LIFE_TIME
PASSWORD_REUSE_TIME
PASSWORD_REUSE_MAX
PASSWORD_VERIFY_FUNCTION
PASSWORD_LOCK_TIME
PASSWORD_GRACE_TIME
16 rows selected
SQL>
这样就不会用:client端因输入密码错误,造成用户被locked(timed)