Oracle數據庫查看用戶狀態

一、當前ORACLE用戶的狀態可查看視圖DBA_USERS;一般情況下在使用的正常用戶均處於OPEN狀態。

select username,account_status from dba_users;

二、ORACLE數據庫用戶有多種狀態,可查看視圖USER_ASTATUS_MAP。

select * from user_astatus_map;

九種狀態可分爲兩類:1.基本狀態;2.組合狀態。
前五種是基本狀態:0 OPEN、1 EXPIRED、2 EXPIRED(GRACE)、4 LOCKED(TIMED)、8 LOCKED
後四種是基本狀態:5 EXPIRED & LOCKED(TIMED)、6 EXPIRED(GRACE) & LOCKED(TIMED)、9 EXPIRED & LOCKED、10 EXPIRED(GRACE) & LOCKED
後四種的組合狀態可通過狀態號STATUS#獲得其狀態的兩個組合。掌握前五種即可。

三、五種基本狀態
五種基本狀態可分爲三類:1.正常狀態;2.鎖定狀態;3.密碼過期狀態。
1、OPEN狀態表示用戶處於正常狀態。
2、LOCKED和LOCKED(TIMED)表示用戶被鎖定狀態。
用戶被鎖定有兩種:
一種是DBA顯式的通過SQL語句對用戶進行鎖定;
另一種是被動的鎖定,默認情況下如果密碼輸入錯誤超過10次。
該限制由PROFILE中的FAILED_LOGIN_ATTEMPTS控制,可查看視圖DBA_PROFILES。
1)顯式鎖定用戶LOCKED:alter user [username] account lock;
2)輸入10次錯誤密碼後被動鎖定LOCKED(TIMED)

3、EXPIRED和EXPIRED(GRACE)表示用戶密碼過期狀態。
修改PROFILE中的PASSWORD_LIFE_TIME實現密碼是否過期:alter profile default limit password_life_time unlimited;
密碼過期後也可修改PROFILE中的PASSWORD_GRACE_TIME控制使用的天數:alter profile default limit password_grece_time 180;
對於密碼過期的用戶OPEN:alter user [username] identified by account unlock;

四、鎖定的兩種狀態[LOCKED和LOCKED(TIMED)]和密碼過期的兩種狀態[EXPIRED和EXPIRED(GRACE)]之間任意組合即2×2=4,因此有四種組合狀態。

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