DB fail 유형

DB fail 유형

  1. Statement fail
  2. User proc fail
  3. Network fail
  4. User error
  5. Instance fail
  6. Media fail




Statement fail

  • DB에 발생된 명령문(SQL구문)이 정상적으로 실행되지 않고 오류가 발생된 경우
  • 원인 : 오타, 문법오류, 권한 부족, 공간 부족 등
  • 해결 : 명령문 재작성, 권한 부여, 공간 부여 등




User proc fail

  • DB에 접속된 user가 비정삭적으로 접속을 종료한 경우
  • 원인
    • user가 비정상적으로 접속을 종료한 경우
    • DBA에 의해 session이 kill된 경우
    • Client PC가 다운된 경우
    • Network 불안정해서 접속이 끊어진 경우
  • 해결 : 재접속하면 됨 <- PMON이 알아서 트랜잭션 롤백 및 LOCK해제함




Network fail

  • DB가 정상적으로 켜져 있는데 DB에 접속이 안되는 경우
  • 원인
    • 리스너가 꺼져있는 경우
    • Network가 불안정해서 DB접속이 아예 안되는 경우
  • 해결
    • 리스너 켜고 DB재시작 (순서중요)
    • Newwork 안정화 작업 요청(DBA가 네트워크관리자에게 요청)




User error(사용자 실수)

  • DB에 발생된 명령어(SQL)구문이 정상적으로 실행되었으나 잘못된 작업을 진행한 경우
  • 원인 : 잘못된 DML과 DDL
  • 해결
    • 트랜잭션 진행 중인 경우 rollback
    • commit을 이미 한 경우 반대의 작업을 다시 수행해야함(insert했다면 delete하고…)
    • 테이블을 실수로 삭제했다면 flashback




Instance fail

  • DB가 비정상적으로 종료된 경우
  • 원인
    • DBA가 DB를 비정상종료(abort)한 경우
    • server pc가 다운되거나 정전이 발생한 경우
    • instance내 필수 구성요소 중 하나에 오류가 발생한 경우
  • 해결 : DB재시작하면 됨 <- DB가 재시작하는 동안에 SMON이 DB동기화 맞춰준다.




Media fail

  • 가장 심각한 오류
  • DB를 구성하는 필수 물리적인 파일 중 하나가 손실/손상된 경우
    • 필수 물리적 파일 = datafile, controlfile, redologfile
  • 원인 : 운영체제에서 datafile, controlfile, redologfile을 실수로 삭제한 경우
  • 해결
    • datafile : 백업파일로부터 복구작업 진행해야한다.
    • controlfile : 다중화된 파일로부터 복구 작업 진행해야한다.
    • redologfile : 다중화된 파일로부터 복구 작업 진행해야한다.