읽기 전용 데이터베이스 백업
이 항목에서는 읽기 전용이거나 마지막으로 백업할 당시에 읽기 전용이었던 데이터베이스를 백업하기 위한 고려 사항에 대해 설명합니다.
읽기 전용 데이터베이스인 경우 주 파일은 백업 중에 업데이트할 수 없습니다. 읽기 전용 데이터베이스에 대한 최상의 방법은 전체 백업을 수행하는 것입니다. 하지만 데이터베이스가 읽기 전용에서 읽기/쓰기로 또는 읽기/쓰기에서 읽기 전용으로 변환되는 경우에는 읽기/쓰기일 때 데이터베이스를 백업할 수 있습니다. 그러면 데이터베이스가 읽기/쓰기 상태로 유지되며 변경 내용의 범위가 작은 경우 차등 백업을 수행할 수 있습니다.
[!참고]
백업 중에는 파일 그룹의 IsReadOnly 속성을 변경할 수 없습니다. 이 속성을 변경하려고 하면 오류가 발생하여 실패합니다.
데이터베이스를 읽기/쓰기 권한으로 변경한 후 부분 백업
읽기 전용 데이터베이스의 부분 백업에는 주 파일 그룹만 포함됩니다. 나중에 데이터베이스를 읽기/쓰기로 변경하는 경우 부분 백업에는 없는 읽기/쓰기 보조 파일 그룹이 있을 수 있습니다. 이 경우 차등 부분 백업을 시도하면 백업이 실패하며 다른 부분 백업을 수행해야만 데이터베이스의 차등 부분 백업을 만들 수 있습니다. 새 부분 백업은 모든 읽기/쓰기 보조 파일 그룹을 포함하며 차등 부분 백업의 기반으로 사용될 수 있습니다.
읽기 전용 데이터베이스의 차등 백업
읽기 전용 데이터베이스의 경우 차등 백업과 함께 사용하는 것보다는 전체 백업만 사용하는 것이 관리하기 쉽습니다. 데이터베이스가 읽기 전용일 때는 백업 및 기타 작업을 하더라도 파일에 포함된 메타데이터를 변경할 수 없습니다. 따라서 차등 백업이 시작되는 로그 시퀀스 번호(차등 기반 LSN)와 같이 차등 백업에 필요한 메타데이터는 master 데이터베이스에 저장됩니다. 차등 기반은 데이터베이스가 읽기 전용인 경우 수행되며 차등 비트맵은 기반 백업 이후에 실제로 발생되는 변경 내용보다 많은 변경 내용을 나타냅니다. backupset 시스템 테이블에 저장된 differential_base_lsn은 데이터가 실제로 기반 백업 이후에 변경되었는지 여부를 결정하는 데 사용되므로 추가 데이터를 백업에서 읽지만 백업에 쓸 수는 없습니다.
읽기 전용 데이터베이스를 다시 작성하고 다시 저장하거나 분리 또는 연결하는 경우 차등 기반 정보는 손실됩니다. master 데이터베이스가 사용자 데이터베이스와 함께 동기화되지 않으므로 이러한 상황이 발생합니다. SQL Server 데이터베이스 엔진은 이 문제를 감지하거나 방지하지 못하므로 이후 모든 차등 백업은 가장 최근의 전체 백업을 기반으로 하지 않게 되고 따라서 결과를 예상할 수 없게 됩니다. 새 차등 기반을 설정하려면 전체 데이터베이스 백업을 만드는 것이 좋습니다.
읽기 전용 데이터베이스에 차등 백업을 사용하기 위한 최상의 방법
읽기 전용 데이터베이스의 전체 데이터베이스 백업을 만든 다음 후속 차등 백업을 만들려면 master 데이터베이스를 백업하십시오.
master 데이터베이스가 손실된 경우 우선 이것을 복원한 후에 사용자 데이터베이스의 차등 백업을 복원합니다.
나중에 차등 백업을 사용하려는 읽기 전용 데이터베이스를 분리 및 연결하는 경우 가능한 빨리 읽기 전용 데이터베이스와 master 데이터베이스의 전체 데이터베이스 백업을 수행합니다.