방법: 데이터베이스 백업 복원(Transact-SQL)
이 항목에서는 전체 데이터베이스 백업을 복원하는 방법에 대해 설명합니다.
중요 |
---|
전체 데이터베이스 백업을 복원하는 시스템 관리자가 복원될 데이터베이스를 현재 사용하고 있는 유일한 사람이어야 합니다. |
필수 구성 요소 및 권장 사항
암호화된 데이터베이스를 복원하려면 데이터베이스를 암호화하는 데 사용된 인증서 또는 비대칭 키에 대한 액세스 권한이 있어야 합니다. 인증서 또는 비대칭 키가 없으면 데이터베이스를 복원할 수 없습니다. 따라서 데이터베이스 암호화 키를 암호화하는 데 사용되는 인증서는 백업이 필요한 동안에는 유지되어야 합니다. 자세한 내용은 SQL Server 인증서 및 비대칭 키를 참조하십시오.
보안을 위해서는 알 수 없거나 신뢰할 수 없는 출처의 데이터베이스는 연결 또는 복원하지 않는 것이 좋습니다. 이러한 데이터베이스에 포함된 악성 코드가 의도하지 않은 Transact-SQL 코드를 실행하거나 스키마 또는 물리적 데이터베이스 구조를 수정하여 오류가 발생할 수 있습니다. 알 수 없거나 신뢰할 수 없는 출처의 데이터베이스를 사용하기 전에 프로덕션 서버가 아닌 서버에서 해당 데이터베이스에 대해 DBCC CHECKDB를 실행하고 저장 프로시저 또는 다른 사용자 정의 코드 같은 데이터베이스의 코드도 검사하십시오.
업그레이드 후 데이터베이스 호환성 수준
업그레이드 후에는 tempdb, model, msdb 및 Resource 데이터베이스의 호환성 수준이 100으로 설정됩니다. master 시스템 데이터베이스는 업그레이드 이전의 호환성 수준이 80 미만이 아니었다면 이전 호환성 수준으로 유지됩니다. master 데이터베이스의 호환성 수준이 업그레이드 이전에 80 미만이었다면 업그레이드 후에는 80으로 설정됩니다.
사용자 데이터베이스의 호환성 수준이 업그레이드 이전에 80 또는 90이었다면 업그레이드 후에도 동일하게 유지됩니다. 업그레이드 이전에 호환성 수준이 70 이하였다면 업그레이드된 데이터베이스에서는 SQL Server 2008에서 지원되는 가장 낮은 호환성 수준인 80으로 설정됩니다.
[!참고]
새 사용자 데이터베이스는 model 데이터베이스의 호환성 수준을 상속합니다.
절차
전체 데이터베이스 백업을 복원하려면
RESTORE DATABASE 문을 실행하여 전체 데이터베이스 백업을 복원합니다. 이때 다음을 지정합니다.
복원할 데이터베이스의 이름
복원할 전체 데이터베이스 백업이 있는 백업 장치
전체 데이터베이스 백업을 복원한 후 적용할 트랜잭션 로그 또는 차등 데이터베이스 백업이 있을 경우 NORECOVERY 절
중요 암호화된 데이터베이스를 복원하려면 데이터베이스를 암호화하는 데 사용된 인증서 또는 비대칭 키에 대한 액세스 권한이 있어야 합니다. 인증서 또는 비대칭 키가 없으면 데이터베이스를 복원할 수 없습니다. 따라서 데이터베이스 암호화 키를 암호화하는 데 사용되는 인증서는 백업이 필요한 동안에는 유지되어야 합니다. 자세한 내용은 SQL Server 인증서 및 비대칭 키를 참조하십시오.
필요에 따라 다음을 지정할 수도 있습니다.
- 복원할 백업 장치의 백업 세트를 식별하기 위한 FILE 절
[!참고]
SQL Server 2005 또는 SQL Server 2000 데이터베이스를 SQL Server 2008로 복원하면 데이터베이스를 바로 사용할 수 있으며 자동으로 업그레이드됩니다. 데이터베이스에 전체 텍스트 인덱스가 있는 경우 업그레이드 프로세스는 upgrade_option 서버 속성의 설정에 따라 인덱스를 가져오거나, 다시 설정하거나, 다시 작성합니다. 업그레이드 옵션이 가져오기(upgrade_option = 2) 또는 다시 작성(upgrade_option = 0)으로 설정되어 있는 경우 업그레이드하는 동안 전체 텍스트 인덱스를 사용할 수 없습니다. 인덱싱되는 데이터 양에 따라 가져오기 작업은 몇 시간씩 걸릴 수 있으며 다시 작성 작업은 10배 정도 더 걸릴 수 있습니다. 업그레이드 옵션이 가져오기로 설정되어 있으면 전체 텍스트 카탈로그를 사용할 수 없는 경우 관련된 전체 텍스트 인덱스가 다시 작성됩니다. upgrade_option 서버 속성의 설정을 변경하려면 sp_fulltext_service를 사용합니다.
예
설명
다음 예에서는 AdventureWorks 전체 데이터베이스 백업을 테이프에서 복원합니다.
코드
USE master
GO
RESTORE DATABASE AdventureWorks
FROM TAPE = '\\.\Tape0'
GO