[Oracle] Database Fail 유형
< Database Fail 유형 >
① Statement failure
- SQL구문이 정상적으로 실행되지 않고 오류가 반환된 경우
- 원인 · 오타, 문법오류, 권한 부족, 저장공간 부족 등
- 해결 · 오타 수정, 문법 수정, 권한 부여, 저장공간 추가 등
② User process failure
- DB에 접속된 User가 비정상적으로 접속을 끊은 경우
- 원인 · User가 일부러 접속을 끊은 경우, Client PC가 다운된 경우
· DBA로부터 Kill을 당한 경우 등
- 해결 · PMON이 자동으로 rollback 및 Lock 해제함. · 접속이 필요한 User는 재접속하면 됨.
③ Network failure
- DB가 정상적으로 켜져있는데 DB 접속이 안되는 경우
- 원인 · 리스너가 꺼져있는 경우, 네트워크에 문제가 있는 경우
- 해결 · 리스너 켜고 DB 재시작하면 됨.
· 네트워크 장애 해결하면 됨.(네트워크 관리자나 업체 문의)
④ User error ( 사용자 실수 )
- SQL구문이 정상적으로 실행이 되었으나 잘못된 작업을 수행한 경우
- 원인 · 잘못된 DML, DDL 등을 수행한 경우
- 해결 · 커밋 전이면 롤백하면 됨.
· 커밋 후이면 반대의 작업을 다시 수행해야함.
· 테이블을 실수로 삭제한 경우라면 flashback 작업 수행해야함.(휴지통)
⑤ Instance failure
- Database가 비정상적으로 종료되는 경우
- 원인 · DBA가 abort 종료모드를 사용해서 DB를 비정상 종료한 경우
· instance를 구성하는 필수 구성요소 중 하나가 문제 있는 경우
· Server PC가 다운, 정전 등
- 해결 · DB 재시작하면됨.
· SMON이 자동으로 DB 재시작 시 동기화 맞춰줌.
⑥ Media failure
- DB를 구성하는 필수 물리적인 파일 중 하나가 손실/손상된 경우
( 필수 물리적인 파일 : Datafile, Controlfile, Redologfile )
- 심각한 오류
- 원인
· 실수로 OS에서 파일을 삭제한 경우
- 해결
· Datafile -> 백업 파일을 사용해서 복구해야함.
· Controlfile, Redologfile -> 다중화된 파일을 사용해서 복구해야함.
- Datafile은 주기적으로 백업이 되어있어야함
- Controlfile과 Redologfile은 다중화 시켜서 운영해야 함