SQL Server는 서버 인스턴스의 작업에 필수적인 시스템 수준 데이터베이스의 시스템 수준데이터베이스 집합을 유지 관리합니다. 중요한 업데이트가 있을 때마다 여러 시스템 데이터베이스를 백업해야 합니다. 항상 백업해야 하는 시스템 데이터베이스에는 msdb, master 및 모델이 포함됩니다. 서버 인스턴스에서 복제를 사용하는 데이터베이스가 있는 경우 백업해야 하는 배포 시스템 데이터베이스도 있습니다. 이러한 시스템 데이터베이스의 백업을 사용하면 하드 디스크 손실과 같은 시스템 오류 발생 시 SQL Server 시스템을 복원하고 복구할 수 있습니다.
다음 표에서는 모든 시스템 데이터베이스를 요약합니다.
| 시스템 데이터베이스 | 설명 | 백업이 필요합니까? | 복구 모델 | 코멘트 |
|---|---|---|---|---|
| 주인 | SQL Server 시스템에 대한 모든 시스템 수준 정보를 기록하는 데이터베이스입니다. | 예 | 단순 | 비즈니스 요구 사항에 맞게 데이터를 충분히 보호하기 위해 필요한 만큼 마스터를 자주 백업합니다. 상당한 업데이트 후에 추가 백업을 보완할 수 있는 정기적인 백업 일정을 권장합니다. |
| 모델 | SQL Server 인스턴스에서 만든 모든 데이터베이스에 대한 템플릿입니다. | 예 | 사용자 구성 가능1 | 비즈니스 요구 사항에 필요한 경우에만 모델을 백업합니다. 예를 들어 데이터베이스 옵션을 사용자 지정한 직후입니다. 모범 사례: 필요에 따라 모델의 전체 데이터베이스 백업만 만드는 것이 좋습니다. 모델은 작고 거의 변경되지 않으므로 로그를 백업할 필요가 없습니다. |
| msdb | 경고 및 작업 예약 및 기록 연산자를 위해 SQL Server 에이전트에서 사용하는 데이터베이스입니다. msdb 에는 백업 및 복원 기록 테이블과 같은 기록 테이블도 포함됩니다. | 예 | 단순(기본값) | 업데이트될 때마다 msdb 를 백업합니다. |
| 리소스 (RDB) | SQL Server와 함께 제공되는 모든 시스템 개체의 복사본을 포함하는 읽기 전용 데이터베이스 | 아니오 | - |
리소스 데이터베이스는 코드만 포함하는 mssqlsystemresource.mdf 파일에 상주합니다. 따라서 SQL Server는 리소스 데이터베이스를 백업할 수 없습니다. 참고: 파일을 데이터베이스 파일 대신 이진 파일(.exe) 파일인 것처럼 처리하여 mssqlsystemresource.mdf 파일에서 파일 기반 또는 디스크 기반 백업을 수행할 수 있습니다. 그러나 백업에서는 SQL Server 복원을 사용할 수 없습니다. mssqlsystemresource.mdf 백업 복사본 복원은 수동으로만 수행할 수 있으며, 현재 리소스 데이터베이스를 오래된 버전이나 잠재적으로 안전하지 않은 버전으로 덮어쓰지 않도록 주의해야 합니다. |
| tempdb | 임시 또는 중간 결과 집합을 보유하기 위한 작업 영역입니다. 이 데이터베이스는 SQL Server 인스턴스가 시작될 때마다 다시 만들어집니다. 서버 인스턴스가 종료되면 tempdb 의 모든 데이터가 영구적으로 삭제됩니다. | 아니오 | 단순 | tempdb 시스템 데이터베이스를 백업할 수 없습니다. |
| 배포 구성 | 서버가 복제 배포자로 구성된 경우에만 존재하는 데이터베이스입니다. 이 데이터베이스는 모든 유형의 복제에 대한 메타데이터 및 기록 데이터와 트랜잭션 복제를 위한 트랜잭션을 저장합니다. | 예 | 단순 | 배포 데이터베이스를 백업하는 시기에 대한 자세한 내용은 복제된 데이터베이스 백업 및 복원을 참조하세요. |
1 모델의 현재 복구 모델을 알아보려면 데이터베이스의 복구 모델 보기 또는 변경(SQL Server) 또는 sys.databases(Transact-SQL)를 참조하세요.
시스템 데이터베이스 복원에 대한 제한 사항
시스템 데이터베이스는 서버 인스턴스가 현재 실행 중인 SQL Server 버전에서 만든 백업에서만 복원할 수 있습니다. 예를 들어 SQL Server 2012 SP1에서 실행되는 서버 인스턴스에서 시스템 데이터베이스를 복원합니다.
데이터베이스를 복원하려면 SQL Server 인스턴스가 실행 중이어야 합니다. SQL Server 인스턴스를 시작하려면 마스터 데이터베이스에 액세스할 수 있고 적어도 부분적으로 사용할 수 있어야 합니다. 마스터를 사용할 수 없게 되면 다음 방법 중 하나를 사용하여 데이터베이스를 사용 가능한 상태로 반환할 수 있습니다.
현재 데이터베이스 백업에서 마스터 를 복원합니다.
서버 인스턴스를 시작할 수 있는 경우 전체 데이터베이스 백업에서 마스터 를 복원할 수 있어야 합니다.
마스터를 완전히 다시 빌드 합니다.
마스터에 심각한 손상이 발생하여 SQL Server를 시작할 수 없는 경우 마스터를 다시 빌드해야 합니다. 자세한 내용은 시스템 데이터베이스 다시 작성을 참조하세요.
중요합니다
마스터를 다시 빌드하면 모든 시스템 데이터베이스가 다시 빌드됩니다.
경우에 따라 모델 데이터베이스를 복구하는 데 문제가 발생하면 시스템 데이터베이스를 다시 빌드하거나 모델 데이터베이스에 대한 mdf 및 ldf 파일을 교체해야 할 수 있습니다. 자세한 내용은 시스템 데이터베이스 다시 작성을 참조하세요.
관련 작업
또한 참조하십시오
배포 데이터베이스
마스터 데이터베이스
msdb 데이터베이스
model Database
리소스 데이터베이스
tempdb 데이터베이스