목차
📌 데이터베이스 백업은 전산 장비의 장애에 대비하여 데이터베이스에 저장된 데이터를 보호하고 복구하기 위한 작업으로, 치명적인 데이터 손실을 막기 위해서는 데이터베이스를 정기적으로 백업해야 한다.
📌 데이터베이스의 장애 유형을 정확히 파악하고 장애에 따른 백업 전략을 세워야 장애 발생 시 복구가 가능 하다.
📌 로그 파일은 데이터베이스의 처리 내용이나 이용 상황 등 상태 변화를 시간의 흐름에 따라 모두 기록한 파일로, 데이터베이스의 복구를 위해 필요한 가장 기본적인 자료이다.
📌 데이터베이스 복구 알고리즘은 동기적/비동기적 갱신에 따라 NO-UNDO/REDO, UNDO/NO-REDO, UNDO/REDO, NO-UNDO/NO-REDO 방법으로 분류된다.
NO-UNDO/REDO | - 데이터베이스 버퍼의 내용을 비동기적으로 갱신한 경우의 복구 알고리즘 - NO-UNDO : 트랜잭션 완료 전에는 변경 내용이 데이터베이스에 기록되지 않으므로 취소할 필요가 없다. - REDO : 트랜잭션 완료 후 데이터베이스 버퍼에는 기록되어 있고, 저장매체에는 기록되지 않았으므로 트랜잭션 내용을 다시 실행해야 한다. |
UNDO/NO-REDO | - 데이터베이스 버퍼의 내용을 동기적으로 갱신한 경우의 복구 알고리즘 - UNDO : 트랜잭션 완료 전에 시스템이 파손되었다면 변경된 내용을 취소한다. - NO-REDO : 트랜잭션 완료 전에 데이터베이스 버퍼 내용을 이미 저장 매체에 기록했으므로 트랜잭션 내용을 다시 실행할 필요가 없다. |
UNDO/REDO | - 데이터베이스 버퍼의 내용을 동기/비동기적으로 갱신한 경우의 복구 알고리즘 - 데이터베이스 기록 전에 트랜잭셩이 완료될 수 있으므로 완료된 트랜잭션이 데이터베이스에 기록되지 못했다면 다시 실행해야 한다. |
NO-UNDO/NO-REDO | - 데이터베이스 버퍼의 내용을 동기적으로 저장 매체에 기록하지만 데이터베이스와는 다른 영역에 기록한 경우의 복구 알고리즘 - NO-UNDO : 변경 내용은 데이터베이스와 다른 영역에 기록되어 있으므로 취소할 필요가 없다. - NO-REDO : 다른 영역에 이미 기록되어 있으므로 트랜잭션을 다시 실행할 필요가 없다. |
💡 동기적 갱신(Synchronous I/O) : 트랜잭션이 완료되기 전에 데이터베이스 버퍼 내용을 동시적으로 저장매체에 기록하는 것
💡 비동기적 갱신(Asynchronous I/O) : 트랜잭션이 완료된 내용을 일정 주기나 작업량에 따라 시간 차이를 두고 저장 매체에 기록하는 것
💡 UNDO : 기록한 내용을 취소함
💡 REDO : 트랜잭션 내용을 다시 실행함
📌 백업 종류는 복구 수준에 따라서 운영체제를 이용하는 물리 백업과 DBMS 유틸리티를 이용하는 논리 백업으로 나뉜다.
구분 | 설명 | 복구 수준 |
물리백업 | 로그 파일 백업 실시 | 완전 복구 |
로그 파일 백업 없음 | 백업 시점까지 복구 | |
논리백업 | DBMS 유틸리티 |
📌 [정보처리기사] 논리 데이터 모델의 물리 데이터 (모델 변환/모델 품질 검토) (0) | 2024.02.16 |
---|---|
📌 [정보처리기사] 물리 데이터베이스 설계 - 스토리지 (0) | 2024.02.15 |
📌 [정보처리기사] 데이터베이스 보안/암호화/접근통제 (0) | 2024.02.15 |
📌 [정보처리기사] 데이터베이스 이중화/서버 클러스터링 (0) | 2024.02.15 |
📌 [정보처리기사] 물리 데이터베이스 설계 - 분산 데이터베이스 설계 (0) | 2024.02.15 |