DBMS/Oracle
[Oracle] Data Pump Export(expdp) 실행 시 UDE-28000, ORA-28000(Account is Locked) 해결 방법
소소한 늙은 개발자의 메모장
2026. 7. 29. 10:10
반응형
Oracle Data Pump를 활용한 Export시 UDE-28000, ORA-28000 계정 잠김된 경우 해결 법
expdp(Data Pump Export)로 접속하려는 Oracle 계정이 잠금(Account Locked) 상태일 때 발생하는 오류
명령 실행 (예시)
$ORACLE_HOME/bin/expdp system/{비밀번호} full=y ~~~`
오류 내용
Export: Release 11.2.0.4.0 - Production on Wed Jul 29 09:33:33 2026
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
UDE-28000: operation generated ORACLE error 28000
ORA-28000: the account is locked
발생 가능한 원인(예상)
- 잘못된 비밀번호를 여러 번 입력한 경우
- PASSWORD_LOCK_TIME 정책에 의해 일정 시간 잠긴 경우
- DBA가 계정을 수동으로 잠근 경우
- 비밀번호 만료(PASSWORD EXPIRE) 후 인증에 실패한 경우
해결방법
서버에서 SYSDBA로 접속
sqlplus "/as sysdba"
또는
sqlplus sys/{비밀번호} as sysdba
잠금 확인
SELECT username, account_status, lock_date, expiry_date FROM dba_users WHERE username = 'SYSTEM';
예:
USERNAME ACCOUNT_STATUS
-------- -------------------------
SYSTEM LOCKED(TIMED)
잠금 해제
ALTER USER system ACCOUNT UNLOCK;
비밀번호 만료시 (필요시)
ALTER USER system IDENTIFIED BY {새비밀번호} ACCOUNT UNLOCK;
잠긴 계정 전체 확인
SELECT username, account_status FROM dba_users WHERE account_status LIKE '%LOCK%';
추가 확인 사항
프로파일(설정) 확인
SELECT profile, resource_name, limit FROM dba_profiles
WHERE resource_name IN ('FAILED_LOGIN_ATTEMPTS','PASSWORD_LOCK_TIME');
예: RESOURCE_NAME의
FAILED_LOGIN_ATTEMPTS와PASSWORD_LOCK_TIME설정 확인
계정(SYSTEM, SYS) 상태 확인
SELECT username, account_status, lock_date, expiry_date FROM dba_users
WHERE username IN ('SYSTEM','SYS');
ORA-28000 오류는 대부분 계정 잠금(Account Locked)으로 인해 발생하며, ACCOUNT_STATUS를 확인한 후 ALTER USER ... ACCOUNT UNLOCK으로 해결할 수 있습니다.
단, 운영 환경에서는 계정이 잠긴 원인을 먼저 확인한 후 잠금 해제를 수행하는 것을 권장합니다.
| ACCOUNT_STATUS | 의미 |
|---|---|
| OPEN | 정상 사용 가능 |
| LOCKED | 수동 잠금 |
| LOCKED(TIMED) | 로그인 실패로 인한 일시 잠금 |
| EXPIRED | 비밀번호 만료 |
| EXPIRED & LOCKED | 비밀번호가 만료된 상태에서 계정도 잠김 |
| EXPIRED(GRACE) | 비밀번호 변경 유예 기간 |
반응형