今天遇到了ORA-28000: the account is locked問題,想說怎麼會被自己BEN掉呢!

查了一下發現,不知道自己在哪裡已經登入10次失敗了,難怪會被自己檔掉!

以下為檢查方式:

1.查看資原是有有限制

SQL> show parameter resource

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
resource_limit                       boolean     FALSE

如果值為FALSE表式為未啟動資源限制。


2.查看用戶設置

SQL> select resource_name, limit from dba_profiles where profile='DEFAULT';

RESOURCE_NAME                    LIMIT
-------------------------------- ----------------------------------------
COMPOSITE_LIMIT                  UNLIMITED
SESSIONS_PER_USER                UNLIMITED
CPU_PER_SESSION                  UNLIMITED
CPU_PER_CALL                     UNLIMITED
LOGICAL_READS_PER_SESSION        UNLIMITED
LOGICAL_READS_PER_CALL           UNLIMITED
IDLE_TIME                        UNLIMITED
CONNECT_TIME                     UNLIMITED
PRIVATE_SGA                      UNLIMITED
FAILED_LOGIN_ATTEMPTS            10
PASSWORD_LIFE_TIME               UNLIMITED
PASSWORD_REUSE_TIME              UNLIMITED
PASSWORD_REUSE_MAX               UNLIMITED
PASSWORD_VERIFY_FUNCTION         NULL
PASSWORD_LOCK_TIME               1
PASSWORD_GRACE_TIME              7

查到關鍵字了!FAILED_LOGIN_ATTEMPTS ,這裡設置10,代表10次錯誤後此帳號將被阻檔登入

3.查看用戶登入錯誤次數

SQL> select name, lcount from user$ where name='PSS3';

NAME                               LCOUNT
------------------------------ ----------
test                                   10

這代表test這帳號,已經錯誤10次了,代表備自己黨掉沒錯!


4.解除用戶限制

SQL> ALTER USER test ACCOUNT UNLOCK;

解除後在使用步驟3進行檢查,會發現LCOUNT歸零,這時候就可以測試登入囉!


解決!


參考文章 : http://www.bkjia.com/sjkqy/869063.html


arrow
arrow
    文章標籤
    Oracle DB
    全站熱搜
    創作者介紹
    創作者 cs60811 的頭像
    cs60811

    IT的隱形人世界

    cs60811 發表在 痞客邦 留言(0) 人氣()