백업 (Backup): 데이터베이스의 복사본
- 백업 대상 : 모든 데이터 파일, 컨트롤 파일, RedoLog 파일, 파라미터 파일, 패스워드 파일
백업 종류
물리적 (Physical) Backup
- 오프라인 Backup(Cold Backup) : 오라클이 Close(Shutdown된 상태)된 상태에서 OS의 COPY 명령어를 통해 복사하는 방법
- 온라인 Backup(Hot Backup) : 오라클이 Open(운영중인 상태)된 상태에서 OS의 COPY 명령어를 통해 복사하는 방법
논리적 (Logical) Backup
- Export Utility $ORACLE_HOME/bin/exp 명령어를 이용하여 Backup하는 방식으로 Database의 논리적인 정보(Schema 구조, 데이터 등)를 저장하는 방식
복구 (Recovery) : 장애가 나기 바로 전 시점으로 복구
장애의 유형
- 실행장애 : 사용자의 실수, 무결성 규정 위반등
- 트랜잭션 장애 : 불명확한 데이터, 시스템 자원 요구 과다등 비정상적인 상황으로 인해 트랜잭션 실행이 중지되는 현상
- 시스템 장애 : 하드웨어 오동작, 정전, 소프트웨어 오류, 교착상태등에 의한 장애 현상
- 미디어 장애 : 디스크 블록의 손상이나 디스크 헤드 충돌 등에 의한 물리적 손상
복구 관리기
- Log : 트랜잭션 수행 중 작성된 DB 변경 내용의 정보.
- Memory Dump : 메모리에 있는 DB 전체 or 일부 내용을 주기적으로 별도의 디스크나 파일록 복사하는 작업
- 트랜잭션 실행이 성공적이지 못하면 로그를 이용하여 트랜잭션의 모든 작업을 Undo(취소) 하여 이전 상태로 복구
- 트랜잭션이 성공하였으나 디스크에 반영되지 않으면 로그를 이용하여 Redo(재작업)을 수행
복구의 종류
Media Recovery
물리적 Backup으로 부터의 복구
- Complete Recovery : 장애 시점까지 Recovery하는 방법
- Incomplete recovery : Backup본을 Restore 한 이후 변경된 작업이 들어 있는 Archived Log 파일을 찾을 수 없거나, Database를 특정 시점으로 돌리는 방법
논리적 Backup으로 부터의 복구
- Import Utility : Import Utility $ORACLE_HOME/bin/imp 를 이용하여 데이터를 복구 하는 방법
Instance Recovery
- 비정상적인 종료후 비동기화 상태에서 DB Open
- 롤 포워드 : 마지막 Check Point 이후의 RedoLog File에 기록된 모든 변경사항을 DB Writer에 의해 데이터파일에 기록
- 데이터 베이스 오픈
- 롤백 : 모든 데이터 파일에서 커밋 되지 않은 데이터 롤백
- DB 동기화 되어 운영
User Error Recovery
- IMP를 이용한 복구 작업