전체 데이터베이스 백업

업데이트: 2006년 7월 17일

전체 데이터베이스 백업은 전체 데이터베이스를 백업합니다. 여기에는 전체 데이터베이스 백업을 복구할 수 있도록 트랜잭션 로그의 부분이 포함됩니다. 전체 데이터베이스 백업은 백업 완료 시점의 데이터베이스를 나타냅니다.

[!참고] 다양한 백업 유형에 대한 개요는 단순 복구 모델에서의 백업 또는 전체 복구 모델에서의 백업을 참조하십시오.

데이터베이스 백업은 사용하기 쉽습니다. 전체 데이터베이스 백업에는 데이터베이스의 모든 데이터가 포함됩니다. 신속하게 백업할 수 있는 작은 데이터베이스의 경우 최상의 방법으로 전체 데이터베이스 백업을 사용하는 것입니다. 그러나 데이터베이스가 커짐에 따라 전체 백업은 완료하는 데 시간이 오래 걸리고 저장 공간도 더 많이 필요하게 됩니다. 따라서 큰 데이터베이스의 경우 차등 백업으로 전체 데이터베이스 백업을 보완할 수 있습니다. 자세한 내용은 차등 데이터베이스 백업을 참조하십시오.

[!참고] 데이터베이스 백업에서 TRUSTWORTHY는 OFF로 설정되어 있습니다. TRUSTWORTHY를 ON으로 설정하는 방법에 대한 자세한 내용은 ALTER DATABASE(Transact-SQL)를 참조하십시오.

단순 복구 모델에서 데이터베이스 백업 사용

단순 복구 모델에서는 각 백업 후 재해가 발생할 경우 데이터베이스가 잠재적 작업 손실 위험에 노출될 수 있습니다. 다음 전체 백업이 시작되어 작업 손실 가능성이 다시 0이 되고 새 작업 손실 가능성 주기가 시작될 때까지 작업 손실 가능성은 업데이트를 수행할 때마다 커집니다.

단순 복구 모델에서는 시간 경과에 따라 백업 사이의 작업 손실 가능성이 증가합니다. 다음 그림에서는 전체 데이터베이스 백업만 사용하는 백업 전략의 작업 손실 가능성을 보여 줍니다.

데이터베이스 백업 간의 작업 손실 가능성 표시

다음 예에서는 WITH FORMAT을 사용하여 기존 백업을 덮어쓰고 새 미디어 세트를 만들어 전체 데이터베이스 백업을 만드는 방법을 보여 줍니다. 그런 다음 트랜잭션 로그를 백업합니다. 실제 상황에서는 일련의 정기적인 로그 백업을 수행해야 합니다.

-- Back up the AdventureWorks database to new media set.
BACKUP DATABASE AdventureWorks
    TO DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\BACKUP\AdventureWorksFullRM.bak' 
    WITH FORMAT;
GO

전체 복구 모델에서 데이터베이스 백업 사용

전체 및 대량 로그 복구를 사용하는 데이터베이스의 경우 트랜잭션 로그 백업이 필요합니다. 다음 그림에서는 전체 복구 모델에서 사용 가능한 가장 단순한 백업 전략을 보여 줍니다.

일련의 전체 데이터베이스 백업 및 로그 백업

[!참고] 논리적으로 일치해야 하는 전체 복구 모델 데이터베이스가 둘 이상이면 이 데이터베이스의 복구 가능성을 확인하는 특수 절차를 구현해야 합니다. 자세한 내용은 표시된 트랜잭션 사용(전체 복구 모델)을 참조하십시오.

로그 백업을 만드는 방법은 트랜잭션 로그 백업 작업을 참조하십시오.

다음 예에서는 WITH FORMAT을 사용하여 기존 백업을 덮어쓰고 새 미디어 세트를 만들어 전체 데이터베이스 백업을 만드는 방법을 보여 줍니다. 그런 다음 트랜잭션 로그를 백업합니다. 실제 상황에서는 일련의 정기적인 로그 백업을 수행해야 합니다. 이 예의 경우 AdventureWorks 데이터베이스는 전체 복구 모델을 사용하도록 설정되어 있어야 합니다.

USE master;
ALTER DATABASE AdventureWorks SET RECOVERY FULL;
GO
-- Back up the AdventureWorks database to new media set (backup set 1).
BACKUP DATABASE AdventureWorks
  TO DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\BACKUP\AdventureWorksFullRM.bak' 
  WITH FORMAT;
GO
--Create a routine log backup (backup set 2).
BACKUP LOG AdventureWorks TO DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\BACKUP\AdventureWorksFullRM.bak';
GO

전체 데이터베이스 백업 만들기

전체 데이터베이스 백업은 한 번의 작업으로 생성되며 일반적으로 지정된 간격으로 발생하도록 예약되어 있습니다.

전체 데이터베이스 백업을 만드는 데 필요한 BACKUP 구문은 다음과 같습니다.

BACKUP DATABASE database_name TO backup_device

전체 데이터베이스 백업을 만들려면

백업 작업을 예약하려면

차등 데이터베이스 백업 사용

데이터베이스 백업은 차등 데이터베이스 백업의 차등 기반으로 사용될 수 있습니다. 이렇게 하면 데이터베이스 백업을 소수의 차등 데이터베이스 백업으로 보충할 수 있습니다. 자세한 내용은 차등 백업 사용차등 데이터베이스 백업을 참조하십시오.

전체 데이터베이스 백업을 사용하여 데이터베이스 복원

전체 데이터베이스 백업에서 임의 위치로 데이터베이스를 복원하여 전체 데이터베이스를 한 번에 다시 만들 수 있습니다. 충분한 트랜잭션 로그가 백업에 포함되어 있으므로 백업 완료 시점에 데이터베이스를 복구할 수 있습니다. 데이터베이스가 복구되면 커밋되지 않은 트랜잭션이 롤백됩니다. 복원된 데이터베이스는 커밋되지 않은 트랜잭션을 제외하면 복원된 백업이 완료된 당시의 원래 데이터베이스 상태와 일치합니다.

복원 작업은 지정된 대상에 데이터베이스를 만듭니다. 데이터베이스가 지정된 위치에 이미 있으면 복원 작업은 기존 데이터베이스를 덮어씁니다. 기존 데이터베이스를 덮어쓰지 않으려면 복원된 데이터베이스에 대해 다른 이름을 지정합니다.

자세한 내용은 완전 데이터베이스 복원 수행(단순 복구 모델) 또는 완전 데이터베이스 복원 수행(전체 복구 모델)을 참조하십시오.

참고 항목

개념

연결된 데이터베이스 서버 백업 및 복원
백업 및 복원에 대한 보안 고려 사항
읽기 전용 데이터베이스 백업
유지 관리 계획 마법사
데이터베이스 옵션 설정

관련 자료

Analysis Services 데이터베이스 백업 및 복원
데이터베이스(데이터베이스 엔진)

도움말 및 정보

SQL Server 2005 지원 받기

변경 내역

릴리스 내역

2006년 7월 17일

새로운 내용
  • 전체 데이터베이스 백업을 만드는 데 필요한 기본 BACKUP 구문 요약을 추가했습니다.
변경된 내용
  • 소개 부분을 수정했습니다.