linux上数据库账号被锁定,ORA-28000账户被锁和解锁
今天測試庫有個賬戶的密碼忘了,試了十幾次就開始提示:
ERROR:
ORA-28000: the account is locked
意思明顯就是賬戶被鎖了,可能是用戶的資源設置中對密碼重試次數做了限制。
驗證:
SQL> select a.username, b.profile, b.resource_name, b.limit
2? from dba_users a, dba_profiles b
3? where a.username = 'GALTTEST' and a.profile = b.profile;
GALTTEST? DEFAULT? ? COMPOSITE_LIMIT? ? ? ? ? UNLIMITED
GALTTEST? DEFAULT? ? SESSIONS_PER_USER? ? ? ? UNLIMITED
GALTTEST? DEFAULT? ? CPU_PER_SESSION? ? ? ? ? UNLIMITED
GALTTEST? DEFAULT? ? CPU_PER_CALL? ? ? ? ? ? ? UNLIMITED
GALTTEST? DEFAULT? ? LOGICAL_READS_PER_SESSION UNLIMITED
GALTTEST? DEFAULT? ? LOGICAL_READS_PER_CALL? ? UNLIMITED
GALTTEST? DEFAULT? ? IDLE_TIME? ? ? ? ? ? ? ? UNLIMITED
GALTTEST? DEFAULT? ? CONNECT_TIME? ? ? ? ? ? ? UNLIMITED
GALTTEST? DEFAULT? ? PRIVATE_SGA? ? ? ? ? ? ? UNLIMITED
GALTTEST? DEFAULT? ? FAILED_LOGIN_ATTEMPTS? ? 10
GALTTEST? DEFAULT? ? PASSWORD_LIFE_TIME? ? ? ? 180
GALTTEST? DEFAULT? ? PASSWORD_REUSE_TIME? ? ? UNLIMITED
GALTTEST? DEFAULT? ? PASSWORD_REUSE_MAX? ? ? ? UNLIMITED
GALTTEST? DEFAULT? ? PASSWORD_VERIFY_FUNCTION? NULL
GALTTEST? DEFAULT? ? PASSWORD_LOCK_TIME? ? ? ? 1
GALTTEST? DEFAULT? ? PASSWORD_GRACE_TIME? ? ? 7
確實如此,只允許10次嘗試,之后賬戶就會被鎖。
解鎖方法很多,通過PLSQL Developer工具解鎖可能是最簡單、最直觀的。
1、用管理員賬戶登錄PLSQL Developer(登錄名可以為system,選擇類型的時候把Normal修改為Sysdba)。
2、左側選擇My Objects,查看Users文件夾。
3、選擇GALTTEST用戶,右擊點擊”編輯“;
4、把“帳戶被鎖住”的勾去掉;(也可以修改密碼)。
5、點擊“應用”再點擊“關閉”;
6、重新登錄就可以通過驗證了;
其實使用sqlplus命令行解鎖也很簡單,用管理員賬號sysdba角色登錄,執行alter user GALTTEST account unlock;,即可解鎖。
另外,使用如下命令將profile的FAILED_LOGIN_ATTEMPTS屬性值修改也可以達到過濾重試次數的限制。
ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED
附:創建profile的SQL:
create profile test limit;
總結
以上是生活随笔為你收集整理的linux上数据库账号被锁定,ORA-28000账户被锁和解锁的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: BCD转换成十进制
- 下一篇: 很建议学习的Linux软件包管理— 软件