본문 바로가기

자바 웹 개발자가 될거야/DB

[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은 다중화 시켜서 운영해야 함