복원 및 복구 개요(SQL Server)Restore and Recovery Overview (SQL Server)

이 항목은 다음에 적용됩니다. 예SQL Server(2016부터 시작)아니요Azure SQL 데이터베이스아니요Azure SQL 데이터 웨어하우스아니요병렬 데이터 웨어하우스THIS TOPIC APPLIES TO: yesSQL Server (starting with 2016)noAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

SQL ServerSQL Server 데이터베이스의 오류를 복구하려면 데이터베이스 관리자는 논리적으로 올바르고 의미 있는 복원 시퀀스로 SQL ServerSQL Server 백업 집합을 복원해야 합니다.To recover a SQL ServerSQL Server database from a failure, a database administrator has to restore a set of SQL ServerSQL Server backups in a logically correct and meaningful restore sequence. SQL ServerSQL Server 복원 및 복구에서는 다음과 같이 전체 데이터베이스, 데이터 파일 또는 데이터 페이지 백업으로부터의 데이터 복원을 지원합니다. restore and recovery supports restoring data from backups of a whole database, a data file, or a data page, as follows:

복원 시나리오 개요 Overview of Restore Scenarios

복원 시나리오 SQL ServerSQL Server 는 하나 이상의 백업에서 데이터를 복원한 다음 데이터베이스를 복구하는 프로세스입니다.A restore scenario in SQL ServerSQL Server is the process of restoring data from one or more backups and then recovering the database. 지원되는 복원 시나리오는 데이터베이스의 복구 모델 및 SQL ServerSQL Server버전에 따라 달라집니다.The supported restore scenarios depend on the recovery model of the database and the edition of SQL ServerSQL Server.

다음 표에서는 복구 모델별로 지원되는 복원 시나리오에 대해 설명합니다.The following table introduces the possible restore scenarios that are supported for different recovery models.

Restore scenario 단순 복구 모델의 경우Under simple recovery model 전체/대량 로그 복구 모델의 경우Under full/bulk-logged recovery models
전체 데이터베이스 복원Complete database restore 이 전략이 기본 복원 전략입니다.This is the basic restore strategy. 전체 데이터베이스 복원은 단순히 전체 데이터베이스 백업을 복원 및 복구하거나A complete database restore might involve simply restoring and recovering a full database backup. 전체 데이터베이스 백업을 복원한 다음 차등 백업을 복원 및 복구합니다.Alternatively, a complete database restore might involve restoring a full database backup followed by restoring and recovering a differential backup.

자세한 내용은 전체 데이터베이스 복원(단순 복구 모델)을 참조하세요.For more information, see Complete Database Restores (Simple Recovery Model).
이 전략이 기본 복원 전략입니다.This is the basic restore strategy. 전체 데이터베이스 복원은 전체 데이터베이스 백업 및 필요에 따라 차등 백업(있는 경우)을 복원한 후 모든 후속 로그 백업을 순서대로 복원합니다.A complete database restore involve restoring a full database backup and, optionally, a differential backup (if any), followed by restoring all subsequent log backups (in sequence). 전체 데이터베이스 복원은 마지막 로그 백업을 복구 및 복원함으로써 완료됩니다(RESTORE WITH RECOVERY).The complete database restore is finished by recovering the last log backup and also restoring it (RESTORE WITH RECOVERY).

자세한 내용은 전체 데이터베이스 복원(전체 복구 모델)을 참조하세요.For more information, see Complete Database Restores (Full Recovery Model)
File restore \File restore **\** 전체 데이터베이스를 복원하지 않고 하나 이상의 손상된 읽기 전용 파일을 복원합니다.Restore one or more damaged read-only files, without restoring the entire database. 파일 복원은 데이터베이스에 적어도 하나 이상의 읽기 전용 파일 그룹이 있는 경우에만 사용할 수 있습니다.File restore is available only if the database has at least one read-only filegroup. 전체 데이터베이스를 복원하지 않고 하나 이상의 파일을 복원합니다.Restores one or more files, without restoring the entire database. 파일 복원은 데이터베이스가 오프라인 상태일 때 수행할 수 있으며 일부 SQL ServerSQL Server버전의 경우 데이터베이스가 여전히 온라인 상태일 때에도 수행할 수 있습니다.File restore can be performed while the database is offline or, for some editions of SQL ServerSQL Server, while the database remains online. 파일을 복원하는 동안 복원되는 파일을 포함하는 파일 그룹은 항상 오프라인 상태입니다.During a file restore, the filegroups that contain the files that are being restored are always offline.
페이지 복원Page restore 해당 사항 없음Not applicable 하나 이상의 손상된 페이지를 복원합니다.Restores one or more damaged pages. 페이지 복원은 데이터베이스가 오프라인 상태일 때 수행할 수 있으며 일부 SQL ServerSQL Server버전의 경우 데이터베이스가 여전히 온라인 상태일 때에도 수행할 수 있습니다.Page restore can be performed while the database is offline or, for some editions of SQL ServerSQL Server, while the database remains online. 페이지를 복원하는 동안 복원되는 페이지는 항상 오프라인 상태입니다.During a page restore, the pages that are being restored are always offline.

손상되지 않은 로그 백업 체인은 현재 로그 파일을 포함하여 모두 사용할 수 있어야 하며 페이지가 현재 로그 파일 상태로 업데이트되도록 모두 적용되어야 합니다.An unbroken chain of log backups must be available, up to the current log file, and they must all be applied to bring the page up to date with the current log file.

자세한 내용은 페이지 복원(SQL Server)을 참조하세요.For more information, see Restore Pages (SQL Server).
증분 복원 \Piecemeal restore **\** 파일 그룹 수준의 주 파일 그룹에서 시작하여 읽기/쓰기가 가능한 모든 파일 그룹, 보조 파일 그룹순으로 단계별로 데이터베이스를 복원 및 복구합니다.Restore and recover the database in stages at the filegroup level, starting with the primary and all read/write, secondary filegroups. 파일 그룹 수준에서 주 파일 그룹에서 시작하여 단계별로 데이터베이스를 복원 및 복구합니다.Restore and recover the database in stages at the filegroup level, starting with the primary filegroup.

\* 온라인 복원은 엔터프라이즈 버전에서만 지원됩니다.\* Online restore is supported only in the Enterprise edition.

데이터 복원 방식과 관계없이 데이터베이스가 복구되기 전에 SQL Server 데이터베이스 엔진SQL Server Database Engine 은 전체 데이터베이스가 논리적으로 일치하도록 해야 합니다.Regardless of how data is restored, before a database can be recovered, the SQL Server 데이터베이스 엔진SQL Server Database Engine guarantees that the whole database is logically consistent. 예를 들어 파일을 복원할 경우 데이터베이스와 일치하도록 충분히 롤포워드해야 파일을 복구하고 온라인 상태로 만들 수 있습니다.For example, if you restore a file, you cannot recover it and bring it online until it has been rolled far enough forward to be consistent with the database.

파일 또는 페이지 복원의 이점Advantages of a File or Page Restore

전체 데이터베이스 대신 파일이나 페이지를 복원 및 복구하면 다음과 같은 이점이 있습니다.Restoring and recovering files or pages, instead of the whole database, provides the following advantages:

  • 복원하는 데이터가 적어 데이터를 복사하고 복구하는 데 필요한 시간이 줄어듭니다.Restoring less data reduces the time required to copy and recover it.

  • SQL ServerSQL Server 에서 파일 또는 페이지를 복원하면 복원 작업을 수행하는 동안 데이터베이스에 있는 다른 데이터가 온라인 상태를 유지할 수 있습니다.On SQL ServerSQL Server restoring files or pages might allow other data in the database to remain online during the restore operation.

복구 모델 및 지원되는 복원 작업 Recovery Models and Supported Restore Operations

데이터베이스에서 사용할 수 있는 복원 작업은 복구 모델에 따라 다릅니다.The restore operations that are available for a database depend on its recovery model. 다음 표에서는 각 복구 모델이 지정된 복원 시나리오를 지원하는지, 또 지원하면 어느 범위까지 지원하는지 요약합니다.The following table summarizes whether and to what extent each of the recovery models supports a given restore scenario.

복원 작업Restore operation 전체 복구 모델Full recovery model 대량 로그 복구 모델Bulk-logged recovery model 단순 복구 모델Simple recovery model
데이터 복구Data recovery 전체 복구합니다(로그를 사용 가능한 경우).Complete recovery (if the log is available). 일부 데이터 손실이 노출됩니다.Some data-loss exposure. 마지막 전체 또는 차등 백업 이후의 데이터는 손실됩니다.Any data since last full or differential backup is lost.
지정 시간 복원Point-in-time restore 로그 백업 범위 내의 시간에서 복원합니다.Any time covered by the log backups. 로그 백업이 대량 로그된 변경 내용을 포함한 경우 허용되지 않습니다.Disallowed if the log backup contains any bulk-logged changes. 지원되지 않습니다.Not supported.
File restore \File restore **\** 전체 지원됩니다.Full support. 경우에 따라 지원됩니다.*\Sometimes.\*** 읽기 전용 보조 파일에만 사용 가능합니다.Available only for read-only secondary files.
Page restore \Page restore **\** 전체 지원됩니다.Full support. 경우에 따라 지원됩니다.*\Sometimes.\*** 없음None.
증분(파일 그룹 수준) 복원 \Piecemeal (filegroup-level) restore **\** 전체 지원됩니다.Full support. 경우에 따라 지원됩니다.*\Sometimes.\*** 읽기 전용 보조 파일에만 사용 가능합니다.Available only for read-only secondary files.

\* 엔터프라이즈 버전에서만 사용할 수 있습니다. SQL ServerSQL Server\* Available only in the Enterprise edition of SQL ServerSQL Server

*\* 필요한 조건은 이 항목의 뒷부분에 나오는 단순 복구 모델에서의 복원 제한 사항을 참조하세요.*\* For the required conditions, see Restore Restrictions Under the Simple Recovery Model, later in this topic.

중요

데이터베이스 복구 모델에 관계없이, 백업을 만든 버전보다 오래된 SQL ServerSQL Server 버전을 통해 SQL ServerSQL Server 백업을 복원할 수는 없습니다.Regardless of the recovery model of a database, a SQL ServerSQL Server backup cannot be restored by a version of SQL ServerSQL Server that is older than the version that created the backup.

단순 복구 모델에서의 증분 시나리오 Restore Scenarios Under the Simple Recovery Model

단순 복구 모델의 경우 복원 작업 시 다음과 같은 제한 사항이 있습니다.The simple recovery model imposes the following restrictions on restore operations:

  • 파일 복원과 증분 복원은 읽기 전용 보조 파일 그룹에만 사용할 수 있습니다.File restore and piecemeal restore are available only for read-only secondary filegroups. 이러한 복원 시나리오에 대한 자세한 내용은 파일 복원(단순 복구 모델)증분 복원(SQL Server)을 참조하세요.For information about these restore scenarios, see File Restores (Simple Recovery Model) and Piecemeal Restores (SQL Server).

  • 페이지 복원은 허용되지 않습니다.Page restore is not allowed.

  • 지정 시간 복원은 허용되지 않습니다.Point-in-time restore is not allowed.

    이러한 모든 제한 사항이 복구 요구에 적합하지 않을 경우 전체 복구 모델 사용을 고려하는 것이 좋습니다.If any of these restrictions are inappropriate for your recovery needs, we recommend that you consider using the full recovery model. 자세한 내용은 백업 개요(SQL Server)을 참조하세요.For more information, see Backup Overview (SQL Server).

중요

데이터베이스 복구 모델에 관계없이, 백업을 만든 버전보다 오래된 SQL ServerSQL Server 버전을 통해 SQL ServerSQL Server 백업을 복원할 수는 없습니다.Regardless of the recovery model of a database, a SQL ServerSQL Server backup cannot be restored by a version of SQL ServerSQL Server that is older than the version that created the backup.

대량 로그 복구 모델에서 복원 Restore Under the Bulk-Logged Recovery Model

이 섹션에서는 전체 복구 모델을 보완하기 위한 용도로만 사용되는 대량 로그 복구 모델에 관련된 복원 고려 사항에 대해 설명합니다.This section discusses restore considerations that are unique to bulk-logged recovery model, which is intended exclusively as a supplement to the full recovery model.

참고

대량 로그된 복구 모델에 대한 자세한 내용은 트랜잭션 로그(SQL Server)를 참조하세요.For an introduction to the bulk-logged recovery model, see The Transaction Log (SQL Server).

일반적으로 대량 로그 복구 모델은 전체 복구 모델과 유사하며 전체 복구 모델에 설명된 정보는 두 모델에 모두 적용됩니다.Generally, the bulk-logged recovery model is similar to the full recovery model, and the information described for the full recovery model also applies to both. 하지만 지정 시간 복구 및 온라인 복원은 대량 로그 복구 모델의 영향을 받습니다.However, point-in-time recovery and online restore are affected by the bulk-logged recovery model.

지정 시간 복구에 대한 제한 사항Restrictions for Point-in-time Recovery

대량 로그 복구 모델에서 수행된 로그 백업에 대량 로그 변경 내용이 포함되어 있는 경우 지정 시간 복구를 사용할 수 없습니다.If a log backup taken under the bulk-logged recovery model contains bulk-logged changes, point-in-time recovery is not allowed. 대량 변경 내용이 포함되어 있는 로그 백업에서 지정 시간 복구를 수행하면 복원 작업이 실패합니다.Trying to perform point-in-time recovery on a log backup that contains bulk changes will cause the restore operation to fail.

온라인 복원에 대한 제한 사항Restrictions for Online Restore

온라인 복원 시퀀스는 다음 조건이 충족되는 경우에만 작동합니다.An online restore sequence works only if the following conditions are met:

  • 복원 시퀀스를 시작하기 전에 필요한 모든 로그 백업을 완료해야 합니다.All required log backups must have been taken before the restore sequence starts.

  • 온라인 복원 시퀀스를 시작하기 전에 대량 변경 내용의 백업을 완료해야 합니다.Bulk changes must be backed before starting the online restore sequence.

  • 데이터베이스에 대량 변경 내용이 있는 경우 모든 파일이 온라인 상태이거나존재하지 않는 상태여야 합니다.If bulk changes exist in the database, all files must be either online ordefunct. 이는 더 이상 데이터베이스의 부분이 아니라는 의미입니다.(This means that it is no longer part of the database.)

    이러한 조건이 충족되지 않으면 온라인 복원 시퀀스가 실패합니다.If these conditions are not met, the online restore sequence fails.

참고

온라인 복원을 시작하기 전에 전체 복구 모델로 전환하는 것이 좋습니다.We recommend switching to the full recovery model before starting an online restore. 자세한 내용은 복구 모델(SQL Server)을 참조하세요.For more information, see Recovery Models (SQL Server).

온라인 복원을 수행하는 방법은 온라인 복원(SQL Server)을 참조하세요.For information about how to perform an online restore, see Online Restore (SQL Server).

데이터베이스 복구 관리자(SQL Server Management Studio) Database Recovery Advisor (SQL Server Management Studio)

데이터베이스 복구 관리자는 올바른 최적의 복원 시퀀스를 구현하는 복원 계획 생성을 용이하게 합니다.The Database Recovery Advisor facilitates constructing restore plans that implement optimal correct restore sequences. 알려진 데이터베이스 복원 문제와 고객이 요청한 개선 사항이 해결되었습니다.Many known database restore issues and enhancements requested by customers have been addressed. 데이터베이스 복구 관리자에 의해 도입되는 주요 개선 사항은 다음과 같습니다.Major enhancements introduced by the Database Recovery Advisor include the following:

  • 복원 계획 알고리즘: 복원 계획 생성에 사용되는 알고리즘, 특히 복잡한 복원 시나리오가 크게 향상되었습니다.Restore-plan algorithm: The algorithm used to construct restore plans has improved significantly, particularly for complex restore scenarios. 지정 시간 복원의 분기 시나리오를 비롯한 여러 경계 사례가 이전 버전의 SQL ServerSQL Server에서보다 효율적으로 처리됩니다.Many edge cases, including forking scenarios in point-in-time restores, are handled more efficiently than in previous versions of SQL ServerSQL Server.

  • 지정 시간 복원: 데이터베이스 복구 관리자를 사용하면 지정된 시간 내의 데이터베이스 복원이 훨씬 쉬워집니다.Point-in-time restores: The Database Recovery Advisor greatly simplifies restoring a database to a given point in time. 시각적 백업 시간대에서 지정 시간 복원에 대한 지원이 크게 향상됩니다.A visual backup timeline significantly enhances support for point-in-time restores. 이 시각적 시간대를 사용하면 데이터베이스 복원의 대상 복원 시점으로 적합한 시점을 확인할 수 있습니다.This visual timeline allows you to identify a feasible point in time as the target recovery point for restoring a database. 시간대는 분기 복구 경로(복구 분기를 연결하는 경로) 순회를 용이하게 합니다.The timeline facilitates traversing a forked recovery path (a path that spans recovery forks). 특정 지정 시간 복원 계획은 대상 지정 시간(날짜 및 시간)으로의 복원과 관련된 백업을 자동으로 포함합니다.A given point-in-time restore plan automatically includes the backups that are relevant to the restoring to your target point in time (date and time). 자세한 내용은 SQL Server 데이터베이스를 지정 시간으로 복원(전체 복구 모델)을 참조하세요.For more information, see Restore a SQL Server Database to a Point in Time (Full Recovery Model).

    데이터베이스 복구 관리자에 대한 자세한 내용은 다음 SQL ServerSQL Server 관리 효율성 블로그를 참조하십시오.For more information, see about the Database Recovery Advisor, see the following SQL ServerSQL Server Manageability blogs:

  • 복구 관리자: 소개Recovery Advisor: An Introduction

  • 복구 관리자: SSMS를 사용하여 분할 백업 만들기/복원Recovery Advisor: Using SSMS to create/restore split backups

없음None.

참고 항목See Also

백업 개요(SQL Server)Backup Overview (SQL Server)