ORACLE ACCOUNT LOCK REASON

經常會遇到db的account 被lock住了。原因一般是有人使用錯誤的密碼去嘗試登陸。但問題是如果數據庫有一千個用戶在登陸,你怎麼知道是哪個用戶使用了錯誤的密碼呢,通過下面的步驟就可以找出來。


1. 查看lock時間

SQL> select ACCOUNT_STATUS,LOCK_DATE from dba_users where username='U1';

ACCOUNT_STATUS       LOCK_DATE
-------------------- --------------------
LOCKED(TIMED)        2012-05-31 15:22:48

2. 查看listener log中這個時間的記錄

31-MAY-2012 15:22:48 * (CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=c21upg10)(CID=(PROGRAM=sqlplus)(HOST=apc_dev1db1)(USER=oratop))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.44)(PORT=49143)) * establish * c21upg10 * 0

這樣就可以知道這個用戶是從哪裏連的了。

要注意的是,雖然密碼錯誤用戶無法登陸數據庫,但是還是要經過litener的,並且由於在listener的時候沒有被返回,所以litener的log中記錄爲連接成功

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章