다음을 통해 공유


데이터베이스 복원 시 복구 시간 줄이기

이 항목에서는 전체 또는 대량 로그 복구 모델을 사용하는 데이터베이스와 관련된 내용을 다룹니다.

데이터베이스, 차등 데이터베이스, 트랜잭션 로그 백업 등을 함께 사용하면 데이터베이스 백업을 만든 후에 지정 시간으로 데이터베이스를 복원하는 데 걸리는 시간을 줄일 수 있습니다. 또한 차등 데이터베이스와 트랜잭션 로그 백업을 모두 만들면 미디어 오류 등으로 인해 트랜잭션 로그 백업이나 차등 데이터베이스 백업을 사용할 수 없을 때 백업 프로시저가 더욱 견고해집니다.

데이터베이스, 차등 데이터베이스, 트랜잭션 로그 백업 등을 사용하는 일반적인 백업 프로시저에서는 데이터베이스 백업은 긴 간격으로, 차등 데이터베이스 백업은 보통 간격으로, 트랜잭션 로그 백업은 짧은 간격으로 만듭니다. 예를 들어 매주 데이터베이스 백업을 만들고 하루에 한 번 이상 차등 데이터베이스 백업을 만들며 10분마다 트랜잭션 로그 백업을 만들 수 있습니다.

오류 지점으로 데이터베이스 복구

데이터베이스를 오류 지점으로 복구해야 할 경우 다음을 수행합니다.

  1. 현재 활성 트랜잭션 로그(비상 로그)를 백업합니다. 트랜잭션 로그가 손상되면 이 작업이 실패합니다.

  2. 최신 전체 데이터베이스 백업을 복원합니다.

  3. 복원된 전체 데이터베이스 백업 이후에 만든 최신 차등 데이터베이스 백업을 복원합니다.

  4. 마지막 차등 백업 이후에 만든 트랜잭션 로그 백업을 순서대로 적용하고 1단계에서 만든 비상 로그 백업을 마지막에 적용합니다.

[!참고]

비상 로그를 백업할 수 없으면 가장 최근의 정기 로그 백업 시점으로만 데이터베이스를 복원할 수 있습니다. 로그 백업 이후의 데이터베이스 변경 내용은 잃게 됩니다.

차등 데이터베이스와 트랜잭션 로그 백업을 함께 사용하여 데이터베이스를 오류 지점으로 복구하면 마지막 차등 데이터베이스 백업 이후에 만든 트랜잭션 로그 백업만 적용하면 되기 때문에 데이터베이스 복원 시간이 줄어듭니다. 차등 데이터베이스 백업을 만들지 않은 경우 전체 데이터베이스가 백업된 후에 만든 트랜잭션 로그 백업을 모두 적용해야 합니다.

차등 데이터베이스 및 트랜잭션 로그 백업 함께 사용

이 예에서는 매일 자정에 전체 데이터베이스 백업을 만들고 월요일부터 토요일까지 정시에 차등 데이터베이스 백업을 만들며 하루 종일 10분마다 트랜잭션 로그 백업을 만드는 업무용 데이터베이스 시스템이 있다고 가정합니다. 데이터베이스를 수요일 5:19 A.M. 상태로 복원하려면 다음을 수행합니다.

  1. 화요일 자정에 만든 전체 데이터베이스 백업을 복원합니다.

  2. 수요일 5:00 A.M.에 만든 차등 데이터베이스 백업을 복원합니다.

  3. 수요일 5:10 A.M.에 만든 트랜잭션 로그 백업을 적용합니다.

  4. 복구 프로세스에서 5:19 A.M. 전에 발생한 트랜잭션만 적용하도록 지정하여 수요일 5:20 A.M.에 만든 트랜잭션 로그 백업을 적용합니다.

또는 데이터베이스를 목요일 3:04 A.M.의 상태로 복원해야 하는데 목요일 3:00 A.M.에 만든 차등 데이터베이스 백업을 사용할 수 없으면 다음을 수행합니다.

  1. 수요일 자정에 만든 데이터베이스 백업을 복원합니다.

  2. 목요일 2:00 A.M.에 만든 차등 데이터베이스 백업을 복원합니다.

  3. 목요일 2:10 A.M.부터 3:00 A.M.까지 만든 트랜잭션 로그 백업을 모두 적용합니다.

  4. 목요일 3:04 A.M.에 복구 프로세스를 중지하여 3:10 A.M.에 만든 트랜잭션 로그 백업을 적용합니다.