
DBA 작업 시 계정 status 가 만료예정인 계정에 대해 password 교체 작업을 진행해줘야 한다.
비밀번호를 알고 있다면 다행이지만, 모르는 경우 아래와 같이 조회, 실행하여 조치할 수 있다.
1. 만료 예정인 계정 조회
SELECT *
FROM DBA_USERS
WHERE ACCOUNT_STATUS ='EXPIRED(GRACE)'
ORDER BY CREATED DESC;
2. 유저 정보 DDL을 가져오는 쿼리 추출 ( 스킵 후 3번 으로 각각 실행도 가능 )
SELECT 'SELECT DBMS_LOB.SUBSTR(DBMS_METADATA.GET_DDL(''USER'','''||USERNAME||'''),1000) FROM DUAL' PWD
FROM DBA_USERS
WHERE ACCOUNT_STATUS = 'EXPIRED(GRACE)';
3. 2번에서 추출된 USER DDL 가져오는 쿼리 실행
SELECT DBMS_LOB.SUBSTR(DBMS_METADATA.GET_DDL('USER','DBADM'),1000) FROM DUAL;
오라클 내부 암호화로 현재 사용중인 암호를 암호화하여 추출한다.
나의 경우 PASSWORD 만 필요하기에 CREATE USER ~~~ 로 추출된 결과에서 CREATE 를 ALTER 로 바꿔주었다.
'새싹 DBA > Scripts' 카테고리의 다른 글
[오라클] 계정 만료 Expired 조치 (0) | 2025.05.20 |
---|---|
ALERT LOG 모니터링 뷰 (최종) (0) | 2024.12.16 |
[오라클] 실제 테이블 row 수를 count 하는 테이블 생성 (0) | 2024.11.25 |
[오라클] 파티션 테이블 테이블스페이스 변경, 인덱스 리빌드 (0) | 2024.10.11 |
[오라클] undo tablespace 관리 (0) | 2024.10.07 |