복원 시퀀스 계획 및 수행(전체 복구 모델)Plan and Perform Restore Sequences (Full Recovery Model)

이 항목 적용 대상: 예SQL Server없습니다Azure SQL 데이터베이스없습니다Azure SQL 데이터 웨어하우스 없습니다 병렬 데이터 웨어하우스THIS TOPIC APPLIES TO: yesSQL ServernoAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

이 항목에서는 SQL ServerSQL Server 데이터베이스에 대해 일반적으로 전체 복구 모델을 사용하는 복원 시퀀스를 계획하고 수행하는 방법에 대해 설명합니다.This topic explains how to plan and perform a restore sequence for a SQL ServerSQL Server databases that ordinarily uses the full recovery model. 복원 시퀀스 는 하나 이상의 RESTORE 문의 시퀀스입니다.A restore sequence is a sequence of one or more RESTORE statements. 일반적으로 복원 시퀀스는 복원 중인 데이터베이스, 파일 및/또는 페이지의 내용을 초기화하고(데이터 복사 단계), 기록된 트랜잭션을 롤포워드하고(다시 실행 단계), 커밋되지 않은 트랜잭션을 롤백합니다(실행 취소 단계).Typically, a restore sequences initializes the contents of the database, files, and/or pages being restored (the data-copy phase), rolls forward logged transactions (the redo phase), and rolls back uncommitted transactions (the undo phase).

대부분의 경우 복원 시퀀스에는 전체 데이터베이스 백업, 차등 데이터베이스 백업 및 후속 로그 백업만 필요합니다.In simple cases, a restore sequence requires only a full database backup, a differential database backup, and the subsequent log backups. 이러한 경우 올바른 복원 시퀀스를 만드는 과정은 매우 간단하며In these cases, constructing a correct restore sequence is easy. 예를 들어 전체 데이터베이스를 실패 지점으로 복원하려면 먼저 활성 트랜잭션 로그( 비상 로그)를 백업합니다.For example, to restore a whole database to the point of a failure, start by backing up the active transaction log (the tail of the log). 그런 다음 가장 최근에 수행된 전체 데이터베이스 백업, 차등 데이터베이스 백업(있는 경우) 및 모든 후속 로그 백업을 순서대로 복원합니다.Then, restore the most recent full database backup, the most recent differential backup (if any), and all subsequent log backups in the order in which they were taken.

보다 복잡한 경우에는 올바른 복원 시퀀스를 만드는 작업이 복잡해질 수 있습니다.In more complex cases, constructing a correct restore sequence can be a complex process. 예를 들어 복원 시퀀스에서 여러 파일을 백업해야 하거나 데이터를 특정 지정 시간으로 복원해야 할 수 있습니다.For example, a restore sequence might require multiple file backups or restoring data to a specific point in time. 매우 복잡한 경우에는 하나 이상의 복구 분기 지점을 포함하는 분기 복구 경로를 순회해야 할 수 있습니다.In very complex cases, you might even have to traverse a forked recovery path that spans one or more recovery forks.

참고

복구 경로 는 데이터베이스를 특정 시점(복구 지점)으로 가져온 데이터 및 로그 백업 시퀀스입니다.A recovery path is the sequence of data and log backups that have brought a database to a particular point in time (known as a recovery point). 복구 경로는 데이터베이스의 일관성은 계속 유지한 채 시간 경과에 따라 점진적으로 데이터베이스를 변경시키는 특정 변환 집합입니다.A recovery path is a specific set of transformations that have evolved the database over time, yet have maintained the consistency of the database. 복구 경로는 시작점(LSN,GUID)에서부터 끝점(LSN,GUID)까지의 LSN 범위를 나타냅니다.A recovery path describes a range of LSNs from a start point (LSN,GUID) to an end point (LSN,GUID). 복구 경로의 LSN 범위는 하나 이상의 복구 분기의 시작부터 끝 전체에 이를 수 있습니다.The range of LSNs in a recovery path can traverse one or more recovery branches from start to end.

복원 시퀀스를 계획하려면To Plan a Restore Sequence

복원 시퀀스를 시작하기 전에 다음 단계를 따르십시오.Before you start a restore sequence, follow these steps:

  1. 가능한 경우 데이터베이스의 비상 로그 백업을 만듭니다.Create a tail-log backup of the database, if you can. 자세한 내용은 비상 로그 백업(SQL Server)을 참조하세요.For more information, see Tail-Log Backups (SQL Server).

  2. 대상 복구 지점을 결정합니다.Determine the target recovery point.

    대상 복구 지점은 트랜잭션 로그 백업 내의 지정 시간이나 표시로 결정할 수 있습니다.The target recovery point can be any point in time or mark within a transaction log backup. 자세한 내용은 SQL Server 데이터베이스를 지정 시간으로 복원(전체 복구 모델) 또는 표시된 트랜잭션을 사용하여 관련 데이터베이스를 일관되게 복구(전체 복구 모델)를 참조하세요.For more information, see Restore a SQL Server Database to a Point in Time (Full Recovery Model) or Use Marked Transactions to Recover Related Databases Consistently (Full Recovery Model).

  3. 수행하려는 복원 유형을 결정합니다.Determine the type of restore you want to perform. 자세한 내용은 복원 및 복구 개요(SQL Server)을 참조하세요.For more information, see Restore and Recovery Overview (SQL Server).

  4. 필요한 백업을 확인하고 필요한 미디어 세트와 백업 장치를 사용할 수 있는지 확인합니다.Identify which backups you require and make sure that the necessary media sets and backup devices are available. 자세한 내용은 백업 장치(SQL Server)미디어 세트, 미디어 패밀리 및 백업 세트(SQL Server)를 참조하세요.For more information, see Backup Devices (SQL Server) and Media Sets, Media Families, and Backup Sets (SQL Server).

복원 시퀀스를 수행하려면To Perform a Restore Sequence

복원 시퀀스를 수행하려면 다음 단계를 따르십시오.To perform a restore sequence, follow these steps:

  1. 시퀀스를 시작하려면 데이터베이스 백업, 부분 백업, 하나 이상의 파일 백업과 같은 데이터 백업을 하나 이상 복원합니다.To start the sequence, restore a one or more data backups, such as: a database backup, a partial backup, one or more file backups.

  2. 필요에 따라 이러한 전체 백업을 기반으로 한 최신 차등 백업을 복원합니다.Optionally, restore the latest differential backups that are based on these full backups.

    복원하고자 하는 각각의 전체 백업에 대해 해당 백업이 모든 차등 백업에 대한 기반인지 여부를 확인합니다.For each full backup that you plan to restore, determine whether it is the base for any differential backups. 그럴 경우 가능하면 가장 최근의 차등 백업을 복원합니다.If so, restore most recent differential backup, if you can. 자세한 내용은 차등 백업(SQL Server)을 참조하세요.For more information, see Differential Backups (SQL Server).

  3. 로그 백업을 순서대로 복원하여 복구 지점이 포함된 백업에서 완료함으로써 데이터베이스를 롤포워드합니다.Roll forward the database by restoring log backups in sequence, finishing with the backup that contains the recovery point. 모든 로그 백업을 적용해야 하는지 여부는 대상 복구 지점을 포함하는 로그 백업에 따라 다음과 같이 달라집니다.Whether you have to apply all the log backups depends on what log backup contains the target recovery point, as follows:

    • 복구 지점이 실패 지점일 경우 복원한 마지막 데이터 전체 백업 또는 차등 백업 이후에 만든 모든 로그 백업을 복원해야 합니다.If the recovery point is the point of a failure, you must restore every log backup that was created since the last data (full or differential) backup you restored. 자세한 내용은 트랜잭션 로그 백업 적용(SQL Server)을 참조하세요.For more information, see Apply Transaction Log Backups (SQL Server).

    • 지정 시간 복원의 경우 최신 로그 백업이 필요하지 않습니다.For a point-in-time restore, you might not require the most recent log backups. SQL Server Management StudioSQL Server Management Studio를 사용하면 데이터베이스 복구 관리자는 해당 시점에 복원하는 데 필요한 백업만 선택되도록 합니다.If you use SQL Server Management StudioSQL Server Management Studio, the Database Recovery Advisor ensures that only backups that are required to restore to your specified point in time are selected. 이러한 백업은 지정 시간 복원에 필요한 권장 복원 계획을 구성합니다.These backups make up the recommended restore plan for your point-in-time restore. 자세한 내용은 SQL Server 데이터베이스를 지정 시간으로 복원(전체 복구 모델)을 참조하세요.For more information, see Restore a SQL Server Database to a Point in Time (Full Recovery Model).

복원 시퀀스 다시 시작Restarting a Restore Sequence

복원 시퀀스의 결과에 문제가 발생한 경우 복원 시퀀스를 중지하고 처음부터 다시 시작할 수 있습니다.If you encounter a problem with the outcome of a restore sequence, you can quit it and restart the restore sequence over from the start. 예를 들어 실수로 너무 많은 로그 백업을 복원하여 의도한 복원 지점을 지나친 경우 대상 복구 지점을 포함하는 로그 백업까지 복원 시퀀스를 다시 시작해야 합니다.For example, if you accidentally restore too many log backups and overshoot the intended recovery point, you must restart the restore sequence up to log backup that contains the target recovery point.

참고 항목See Also

백업 개요(SQL Server) Backup Overview (SQL Server)
복원 및 복구 개요(SQL Server) Restore and Recovery Overview (SQL Server)
전체 데이터베이스 복원(전체 복구 모델) Complete Database Restores (Full Recovery Model)
온라인 복원(SQL Server) Online Restore (SQL Server)
파일 복원(전체 복구 모델) File Restores (Full Recovery Model)
페이지 복원(SQL Server) Restore Pages (SQL Server)
증분 복원(SQL Server)Piecemeal Restores (SQL Server)