1. 程式人生 > >Oracle用戶被鎖定解決方法

Oracle用戶被鎖定解決方法

get fault strong ogr oracle nec failed port clas

1、用dba角色的用戶登陸,進行解鎖,先設置具體時間格式,以便查看具體時間

SQL> alter session set nls_date_format=yyyy-mm-dd hh24:mi:ss;

Session altered.

2、查看具體的被鎖時間

SQL> select username,lock_date from dba_users where username=TEST;

USERNAME LOCK_DATE TEST 2009-03-10 08:51:03

3、解鎖

SQL> alter user test account unlock;

User altered.

4、查看是那個ip造成的test用戶被鎖

查看$ORACLE_HOME/network/admin/log/listener.log日誌

10-MAR-2009 08:51:03 * (CONNECT_DATA=(SID=lhoms)(SERVER=DEDICATED)(CID=(PROGRAM=oracle)(HOST=omstestdb)(USER=oraoms))) * (ADDRESS=(PROTOCOL=tcp)(HOST=10.69.1.11)(PORT=49434)) * establish * lhoms * 0

10-MAR-2009 08:51:03 * (CONNECT_DATA=
(SID=lhoms)(SERVER=DEDICATED)(CID=(PROGRAM=oracle)(HOST=omstestdb)(USER=oraoms))) * (ADDRESS=(PROTOCOL=tcp)(HOST=10.69.1.11)(PORT=49435)) * establish * lhoms * 0

這樣可知是上面10.69.1.11的ip嘗試多次失敗登陸造成的被鎖

註:

一般數據庫默認是10次嘗試失敗後鎖住用戶

1、查看FAILED_LOGIN_ATTEMPTS的值

select * from dba_profiles where RESOURCE_NAME = FAILED_LOGIN_ATTEMPTS
;

2、修改為30次

alter profile default limit FAILED_LOGIN_ATTEMPTS 30;

3、修改為無限次(為安全起見,不建議使用)

alter profile default limit FAILED_LOGIN_ATTEMPTS unlimited;

Oracle用戶被鎖定解決方法