Database/Oracle

ORA-28000 Account is locked

Jared 2009. 3. 26. 00:46

이 오류는 일정 횟수 이상 로그인 실패나 10g인 경우 처음 설치 후 scott 계정을 사용할려면 만날 수 있는 오류다.

CREATE PROFILE 명령을 사용하여 로그인을 시도할 경우에 허용된 실패횟수를 지정할 수 있을 뿐 아니라 유저 계정이 잠금상태로 남아 있게 되는 시간도 지정할 수 있다.

접속시에  일정 회수 이상 실패한 후 CONNECT를 시도하면 "ORA-28000: the account is locked" ERROR 발생.

[상태확인]
SQL> SELECT  USERNAME,  
ACCOUNT_STATUS, TO_CHAR(LOCK_DATE,'YYYY.MM.DD HH24:MI') 
           FROM  DBA_USERS;

[상태확인]
SCOTT                          EXPIRED & LOCKED                

 [해결방법]
SQL> ALTER  USER scott ACCOUNT UNLOCK;

[상태확인] 
SQL> SELECT  USERNAME, ACCOUNT_STATUS, TO_CHAR(LOCK_DATE,'YYYY.MM.DD HH24:MI') 
           FROM  DBA_USERS
        WHERE  USERNAME = 'SCOTT'

 [결과]
SCOTT                          EXPIRED

 [EXPIRED 상태풀기]
SQL> alter user scott identified by tiger;

[결과확인]
SQL> SELECT  USERNAME, ACCOUNT_STATUS, TO_CHAR(LOCK_DATE,'YYYY.MM.DD HH24:MI') 
           FROM  DBA_USERS
        WHERE  USERNAME = 'SCOTT'

 [결과]
SCOTT                          OPEN
 
PROFILE 옵션 조회하기
SQL> SELECT  p.profile, p.resource_name, p.limit 
           FROM  dba_users u, dba_profiles p
        WHERE  p.profile=u.profile 
            AND  username='user_id'

PROFILE 변경 작업
SQL>  ALTER PROFILE default LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED