오라클 DB계정을 사용하다보면 한번쯤은 겪는 문제가 아닐까 싶다.
기본적으로 기간에 따라서 만료가 되는 경우이면
위와 같이 메세지창이 하나 뜨게되는데 1일이 아닌 7일안에 바꾸라고 메세지가 나타나게 된다.
하지만, 저 기간에 비밀번호를 바꾸지 않으면
위와 같이 EXPIRED 만료됨으로 상태가 바뀌게 되고 DB접속은 ORA-28001 비밀번호가 만료되었다는 메세지가 나타난다.
이에 대한 해결방법
중요!! SYS계정으로 접속
1. 해결하고자 하는 DB계정이 어떠한 상태인지 먼저 확인
계정상태를 확인하고 만료가 되었다면 ACCOUNT_STATUS는 EXPIRED로 뜰 것이고 EXPIRY_DATE는 과거의 날짜로 되어있을 것이다.
2. 아래 명령어 입력
- 이 쿼리는 패스워드의 기간을 확인할 수 있는 명령어
위에 나오는 데이터로 보면 시작일부터 180일 후에 만료
3. *계속 같은 비밀번호를 사용할 것이고 만료가 되기전에 잘 바꿔줄 것이다라면 3번은 넘어가도 된다.
이유 : 만료되기 전에 만료된다는 알림창이 뜸 (이때 바꿔주면 되기 때문)
위 쿼리는 패스워드의 기간을 제한두지 않겠다라고 변경한 쿼리
=> 이렇게 변경하면 패스워드가 기간에 따라 만료되지 않음
3-1. 이제 해결!!!
ALTER USER [DB계정명] IDENTIFIED BY [패스워드] 로 패스워드 변경.
위 명령어로 변경하게 되면 기존에 ACCOUNT_STATUS에 EXPIRED (만료됨)이라고 되어있던 것이 OPEN으로 바뀐다.
다시 DB접속하면 접속완료
추가
기존 DEFAULT 기간 제한을 유지한 채로 180일만 360일로 변경하겠다.
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME 360;