ORA-28001: the password has expired
오라클 접속 시에 ORA-28001: the password has expired 에러가 발생할 경우가 있다. 오라클의 경우 기본적으로 비밀번호 만료기간이 180일로 설정되어있다. 이를 해결하는 방법을 알아보도록 하겠다.
비밀번호 유효기간
SELECT RESOURCE_NAME, LIMIT FROM DBA_PROFILES WHERE PROFILE='DEFAULT';
위의 쿼리를 수행해보면 PASSWORD_LIFE_TIME가 180으로 설정되어있는걸 볼 수있다.(비밀번호 만료기간 180일 이라는 의미이다.)
비밀번호 만료기간 수정
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
비밀번호 EXPIRED 여부 확인
SELECT USERNAME, ACCOUNT_STATUS, LOCK_DATE, EXPIRY_DATE
FROM DBA_USERS
WHERE USERNAME = [USER_ID]
ORDER BY
CREATED;
위의 쿼리를 실행해 보면 계정 상태가 EXPIRED로 되어있는걸 확일 할 수 있다. 계정 상태를 OPEN으로 변경하기 위해선 비밀번호를 변경 해야만 한다.
비밀번호 변경
ALTER USER [USER_ID] IDENTIFIED BY [PASSWORD];
비밀번호 변경 중 LOCK이 걸릴 경우
ALTER USER [USER_ID] ACCOUNT UNLOCK;
위의 쿼리를 실행시키면 락이 해제된다.
댓글남기기