oracle

Oracle ORA-28000 アカウントロックの解除

ORA-28000 発生原因

ORA-28000が出てログインできなくなっている直接の原因はアカウントロックがされているためです。

エラーメッセージ
ERROR:
ORA-28000: the account is locked
アカウントロックを確認する
select USERNAME,ACCOUNT_STATUS,LOCK_DATE,PROFILE
from dba_users where USERNAME = 'SOONI'
;
---状態を確認するとロックされている事がわかります
SQL> set sqlformat ansiconsole on
SQL> select USERNAME,ACCOUNT_STATUS,LOCK_DATE,PROFILE
  2  from dba_users where USERNAME = 'SOONI'
  3  ;

   USERNAME    ACCOUNT_STATUS    LOCK_DATE    PROFILE
___________ _________________ ____________ __________
SOONI       LOCKED            19-06-23     DEFAULT

SQL>
アカウントロックを解除する
alter user SOONI account unlock
;
SQL> -- アカウントロック解除
SQL> alter user SOONI account unlock
  2  ;

User SOONIが変更されました。

SQL>
アカウントをロックする
alter user SOONI account lock
;

アカウントロックがされる条件を確認する

dba_profilesを参照する事でアカウントロックが発生する条件を確認する事ができます

select p.PROFILE,p.RESOURCE_NAME,p.RESOURCE_TYPE,p.LIMIT  
from dba_users u inner join dba_profiles p
on u.PROFILE = p.PROFILE 
where u.USERNAME='SOONI'
order by p.RESOURCE_NAME
;
SQL> select p.PROFILE,p.RESOURCE_NAME,p.RESOURCE_TYPE,p.LIMIT
  2  from dba_users u inner join dba_profiles p
  3  on u.PROFILE = p.PROFILE
  4  where u.USERNAME='SOONI'
  5  order by p.RESOURCE_NAME
  6  ;

   PROFILE                RESOURCE_NAME    RESOURCE_TYPE        LIMIT
__________ ____________________________ ________________ ____________
DEFAULT    COMPOSITE_LIMIT              KERNEL           UNLIMITED
DEFAULT    CONNECT_TIME                 KERNEL           UNLIMITED
DEFAULT    CPU_PER_CALL                 KERNEL           UNLIMITED
DEFAULT    CPU_PER_SESSION              KERNEL           UNLIMITED
DEFAULT    FAILED_LOGIN_ATTEMPTS        PASSWORD         10
DEFAULT    IDLE_TIME                    KERNEL           UNLIMITED
DEFAULT    LOGICAL_READS_PER_CALL       KERNEL           UNLIMITED
DEFAULT    LOGICAL_READS_PER_SESSION    KERNEL           UNLIMITED
DEFAULT    PASSWORD_GRACE_TIME          PASSWORD         7
DEFAULT    PASSWORD_LIFE_TIME           PASSWORD         UNLIMITED
DEFAULT    PASSWORD_LOCK_TIME           PASSWORD         1
DEFAULT    PASSWORD_REUSE_MAX           PASSWORD         UNLIMITED
DEFAULT    PASSWORD_REUSE_TIME          PASSWORD         UNLIMITED
DEFAULT    PASSWORD_VERIFY_FUNCTION     PASSWORD         NULL
DEFAULT    PRIVATE_SGA                  KERNEL           UNLIMITED
DEFAULT    SESSIONS_PER_USER            KERNEL           UNLIMITED

16行が選択されました。

SQL>
set lin 100
set pages 50
COLUMN PROFILE FORMAT A14
COLUMN RESOURCE_NAME FORMAT A34
COLUMN RESOURCE_TYPE FORMAT A10
COLUMN LIMIT FORMAT A12
スポンサーリンク