Oracle 10g用戶解鎖及執(zhí)行權(quán)限受限的處理方法
本文想要解決的是Oracle 10g用戶解鎖及執(zhí)行權(quán)限受限的問題,希望通過本文能讓大家了解Oracle 10g用戶解鎖有所幫助。
最近發(fā)現(xiàn)公司有部分現(xiàn)場數(shù)據(jù)庫系統(tǒng)存在這樣的問題:
1)用戶被鎖定,但一直無法對Oracle 10g用戶解鎖
說明:在個(gè)別現(xiàn)場發(fā)現(xiàn)一個(gè)用戶經(jīng)常被鎖住,剛使用[alter user <user_name> account unlock; commit;]然后仍然無法登錄,還是一直報(bào)錯(cuò):用戶被鎖定。
解決辦法:查DBA_USERS表,可以看到用戶的狀態(tài)。是否被鎖住(變成LOCKED(TIMED)狀態(tài)了說明用戶被鎖定)。
解決:
- select * from USER_HISTORY$ --查看用戶口令是否過期
- select * from dba_profiles --查看用戶使用的profile設(shè)置
- sqlplus /nolog
- conn /as sysdba
- alter user <user_name> account unlock; --解鎖
- alter user <user_name> password expire; --密碼過期
- alter user <user_name> identified by <password>; --重設(shè)密碼
或者 alter profile default limit failed_login_Attempts unlimited;
然后登錄即可
【注】若要查看任一賬戶的口令限期,可查詢DBA_USERS數(shù)據(jù)字典視圖的Expire_Date列。若用戶自己想查看,可查詢USER_USERS數(shù)據(jù)字典視圖的Expiry_Date列(通過SQL*Plus或一個(gè)基于客戶機(jī)的查詢工具)。
2)ORA-01031: insufficient privileges 問題
在用sysdba登錄時(shí)一直報(bào)ORA-01031: insufficient privileges錯(cuò)誤
原因:操作系統(tǒng)使用Oracle用戶登錄,然后使用
- sqlplus /nolog
- conn /as sysdba
這需要connect 之前的那個(gè)操作系統(tǒng)用戶是DBA組,所以要先確定Oracle用戶是否屬于DBA組,結(jié)果發(fā)現(xiàn)他屬于staff組
解決:修改Oracle用戶的組屬性后,問題解決
【編輯推薦】