차등 백업(SQL Server)
적용 대상: SQL Server
이 백업 및 복원 문서는 모든 SQL Server 데이터베이스에 관련됩니다.
차등 백업은 가장 최근에 수행한 이전 전체 데이터 백업을 기반으로 합니다. 차등 백업은 전체 백업 이후 변경된 데이터만 캡처합니다. 차등 백업의 기반이 되는 전체 백업을 차등 기반이라고 합니다. 복사 전용 백업을 제외한 전체 백업은 데이터베이스 백업, 부분 백업 및 파일 백업을 포함한 일련의 차등 백업에 대한 기반으로 사용할 수 있습니다. 파일 차등 백업의 기본 백업은 전체 백업, 파일 백업 또는 부분 백업 내에 포함될 수 있습니다.
이점
차등 백업을 만드는 것은 전체 백업을 만드는 것보다 훨씬 빠를 수 있습니다. 차등 백업은 차등 백업의 기반이 되는 전체 백업 이후 변경된 데이터만 기록합니다. 따라서 데이터 손실의 위험을 줄이면서 빈번한 데이터 백업을 간편하게 수행할 수 있습니다. 그러나 차등 백업을 복원하기 전에 해당 기본 백업을 복원해야 합니다. 따라서 차등 백업에서 복원할 경우 두 개의 백업 파일이 필요하기 때문에 전체 백업에서 복원할 때보다 더 많은 단계가 필요하며 더 오랜 시간이 걸립니다.
차등 데이터베이스 백업은 특히 데이터베이스 하위 집합이 나머지 데이터베이스보다 자주 수정되는 경우에 유용합니다. 이러한 경우 차등 데이터베이스 백업을 사용하면 전체 데이터베이스 백업의 오버헤드 없이 자주 백업할 수 있습니다.
전체 복구 모델에서 차등 백업을 사용하면 복원해야 하는 로그 백업 수를 줄일 수 있습니다.
차등 백업 개요
차등 백업은 차등 기반이 만들어진 시점과 차등 백업을 만든 시점 간에 변경된 모든 익 스텐트(물리적으로 연속된 8개 페이지의 컬렉션)의 상태를 캡처합니다. 즉, 지정된 차등 백업의 크기는 기본 이후 변경된 데이터의 양에 따라 달라집니다. 일반적으로 기본이 오래되면 새 차등 백업이 더 커집니다. 일련의 차등 백업에서 자주 업데이트되는 범위는 각 차등 백업에 서로 다른 데이터를 포함할 가능성이 높습니다.
다음 그림에서는 차등 백업의 작동 방식을 보여 줍니다. 이 그림은 24개의 데이터 익스텐트( 그 중 6개는 변경됨)를 보여 줍니다. 차등 백업에는 이러한 6개의 데이터 익스텐트만 포함됩니다. 차등 백업 작업은 모든 범위에 대해 비트가 포함된 비트맵 페이지를 사용합니다. 기본 이후 업데이트된 각 익스텐트마다 비트맵에서 비트가 1로 설정됩니다.
참고 항목
차등 비트맵은 복사 전용 백업에 의해 업데이트되지 않습니다. 따라서 복사 전용 백업은 후속 차등 백업에 영향을 주지 않습니다.
해당 기준이 차등 기반보다 훨씬 작을 수 있는 후 상당히 빨리 수행되는 차등 백업입니다. 이렇게 하면 스토리지 공간과 백업 시간이 절약됩니다. 그러나 시간이 지남에 따라 데이터베이스가 변경됨에 따라 데이터베이스와 특정 차등 기반 간의 차이가 증가합니다. 차등 백업과 기본 백업 간의 시간이 길수록 차등 백업이 클 가능성이 높습니다. 즉, 차등 백업의 크기가 결국 차등 기반과 비슷해질 수 있습니다. 큰 차등 백업은 더 빠르고 작은 백업의 장점을 잃게 됩니다.
차등 백업의 크기가 증가함에 따라 차등 백업을 복원하면 데이터베이스를 복원하는 데 필요한 시간이 크게 늘어날 수 있습니다. 따라서 데이터의 새 차등 기반을 설정하기 위해 설정된 간격으로 새 전체 백업을 수행하는 것이 좋습니다. 예를 들어 전체 데이터베이스의 주별 전체 백업(즉, 전체 데이터베이스 백업)과 주중에 정기적으로 일련의 차등 데이터베이스 백업을 수행할 수 있습니다.
복원 시 차등 백업을 복원하기 전에 해당 기본 백업을 복원해야 합니다. 그런 다음 가장 최근의 차등 백업만 복원하여 데이터베이스를 차등 백업이 만들어진 시점으로 전달합니다. 일반적으로 가장 최근의 전체 백업과 해당 전체 백업을 기반으로 하는 가장 최근의 차등 백업을 복원합니다.
메모리 최적화 테이블을 사용하는 데이터베이스의 차등 백업
차등 백업 및 메모리 최적화 테이블이 있는 데이터베이스에 대한 자세한 내용은 메모리 최적화 테이블이 포함된 데이터베이스 백업을 참조하세요.
읽기 전용 데이터베이스의 차등 백업
읽기 전용 데이터베이스의 경우 단독으로 사용되는 전체 백업은 차등 백업과 함께 사용할 때보다 관리하기 쉽습니다. 데이터베이스가 읽기 전용인 경우 백업 및 기타 작업은 파일에 포함된 메타데이터를 변경할 수 없습니다. 따라서 차등 백업이 시작되는 로그 시퀀스 번호(차등 기본 LSN)와 같은 차등 백업에 필요한 메타데이터가 데이터베이스에 master
저장됩니다. 데이터베이스가 읽기 전용일 때 차등 기반이 수행되는 경우 차등 비트맵은 기본 백업 이후 발생한 것보다 더 많은 변경 내용을 나타냅니다. 백업 세트 시스템 테이블에 저장된 데이터가 기본 이후 변경되었는지 여부를 확인하는 데 사용되므로 추가 데이터는 백업에서 읽지만 백업에 기록 differential_base_lsn
되지 않습니다.
읽기 전용 데이터베이스를 다시 빌드, 복원 또는 분리하고 연결하면 차등 기반 정보가 손실됩니다. 이 문제는 데이터베이스가 master
사용자 데이터베이스와 동기화되지 않기 때문에 발생합니다. SQL Server 데이터베이스 엔진 이 문제를 감지하거나 방지할 수 없습니다. 이후 모든 차등 백업은 가장 최근의 전체 백업을 기반으로 하지 않게 되고 따라서 결과를 예상할 수 없게 됩니다. 새 차등 기반을 설정하려면 전체 데이터베이스 백업을 만드는 것이 좋습니다.
읽기 전용 데이터베이스에서 차등 백업을 사용하는 모범 사례
읽기 전용 데이터베이스의 전체 데이터베이스 백업을 만든 후 후속 차등 백업을 만들려는 경우 master
데이터베이스를 백업합니다.
데이터베이스가 master
손실된 경우 사용자 데이터베이스의 차등 백업을 복원하기 전에 복원합니다.
나중에 차등 백업을 사용하려는 읽기 전용 데이터베이스를 분리하고 연결하는 경우 실용적이면 읽기 전용 데이터베이스와 데이터베이스의 전체 데이터베이스 백업을 master
수행합니다.