검색결과 리스트
글
!markdown
# Oracle (오라클)
### 계정상태(만료, 잠김) 확인
처음 겪는다면 조금 당황할 수 있겠지만, 오라클 시스템에는 계정관리 정책이 존재한다.
다음과 같은 정책에 따라서 계정에 접속하지 못하는 경우가 발생한다.
- 비밀번호를 여러번 틀렸을때 계정 잠금(LOCK)
- 한동안 비밀번호를 변경하지 않았을 때, 암호변경기간만료(EXPIRED)
- 비정상적인 무언가가 있었을 경우, 잠금(LOCK)
- 등...
DBA권한이 있는 계정으로 다음 쿼리를 조회해본다.
```sql
---------------------
----- 계정상태 확인
---------------------
-- 조치가 필요한(만료 or 잠김) 계정 확인
select * from dba_users where ACCOUNT_STATUS != 'OPEN'
;
```
### 계정, 접속가능 상태로 복구
- 다음 쿼리로 접속이 가능한 상태로 복구할 수 있다.
```sql
-----------------------
----- 계정 복구하기
-----------------------
-- ACCOUNT_STATUS가 LOCKED이면, UNLOCK해준다.
ALTER USER USERNAME ACCOUNT UNLOCK
;
-- ACCOUNT_STATUS가 EXPIRED이면, USERNAME의 PASSWORD를 갱신한다.
alter user USERNAME IDENTIFIED BY PW
;
-- 다시 잠그려면
ALTER USER USERNAME ACCOUNT LOCK
;
-- 확정
commit
;
```
### 암호정책 바꾸기
- 보안이 필요없는 경우 다음과 같이 암호화 정책을 해제한다면, 귀찮은 일을 줄일 수 있다.
```sql
---------------------------
----- 암호정책 바꾸기
----- 보안이 필요없는 경우, 정책을 바꾼다.
---------------------------
-- 정책 확인하기
select * from dba_profiles where profile = 'DEFAULT'
;
-- 암호변경만료기한 없애기
alter profile default limit PASSWORD_LIFE_TIME UNLIMITED
;
-- 암호입력가능횟수 없애기
alter profile default limit FAILED_LOGIN_ATTEMPTS UNLIMITED
;
-- 확정
commit
;
```
'TOOL > DATABASE' 카테고리의 다른 글
[Oracle] 계층형 쿼리 (Start (0) | 2017.09.29 |
---|---|
[Oracle] DB_USER마다 Session을 제한하기 (0) | 2017.05.30 |
[Oracle] 쉼표(,) 구분자로 목록화(리스팅)된 문자열에 포함한 컬럼의 행(row)만 출력하기 (0) | 2017.03.15 |
[Oracle] 특정 함수 원하는만큼 여러 줄(row) 출력하기 (0) | 2017.03.15 |
[DataBase] 각종 정보 (0) | 2016.12.17 |