데이터베이스 복구 모델 보기 또는 변경View or Change the Recovery Model of a Database (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 Server Management StudioSQL Server Management Studio 또는 Transact-SQLTransact-SQL을 사용하여 데이터베이스를 보거나 변경하는 방법에 대해 설명합니다.This topic describes how to view or change the database by using SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL.

복구 모델 은 트랜잭션이 로깅되는 방법, 트랜잭션 로그에 백업이 필요하며 허용되는지 여부 및 사용 가능한 복원 작업의 종류를 제어하는 데이터베이스 속성입니다.A recovery model is a database property that controls how transactions are logged, whether the transaction log requires (and allows) backing up, and what kinds of restore operations are available. 사용할 수 있는 복구 모델은 3가지로 단순, 전체 및 대량 로그 복구 모델입니다.Three recovery models exist: simple, full, and bulk-logged. 일반적으로 데이터베이스는 전체 복구 모델이나 단순 복구 모델을 사용합니다.Typically, a database uses the full recovery model or simple recovery model. 데이터베이스는 언제든지 다른 복구 모델로 전환이 가능합니다.A database can be switched to another recovery model at any time. model 데이터베이스는 새 데이터베이스의 기본 복구 모델을 설정합니다.The model database sets the default recovery model of new databases.

복구 모델에 대한 자세한 내용은 SQL Server 복구 모델 의 동료들이 제공한 SQL Server 복구 모델을 참조하세요.For a more in depth explanation of recovery models, see SQL Server Recovery Models provided by the folks at MSSQLTips!

시작하기 전 주의 사항 Before you begin

  • 전체 복구 모델 또는 대량 로그된 복구 모델에서 전환하기 전에 트랜잭션 로그를 백업합니다.Back up the transaction log before switching from the full recovery or bulk-logged recovery model.

  • 대량 로그 모델에서는 지정 시간 복구를 사용할 수 없습니다.Point-in-time recovery is not possible with bulk-logged model. 트랜잭션 로그 복원이 필요한 대량 로그된 복구 모델에서 트랜잭션을 실행하면 데이터가 손실될 수 있습니다.Running transactions under the bulk-logged recovery model that require a transaction log restore can exposed them to data loss. 재해 복구 시나리오에서 데이터 복구 기능을 최대화하기 위해 다음 조건에서만 대량 로그된 복구 모델로 전환합니다.To maximize data recoverability in a disaster-recovery scenario, switch to the bulk-logged recovery model only under the following conditions:

    • 사용자가 현재 데이터베이스에서 허용되지 않습니다.Users are currently not allowed in the database.

    • 대량 프로세스 중 수정된 모든 내용은 로그 백업을 수행하지 않고 대량 프로세스를 다시 실행하는 등의 방법으로 복구할 수 있습니다.All modifications made during bulk processing are recoverable without depending on taking a log backup; for example, by re-running the bulk processes.

      이러한 두 조건을 충족하면 대량 로그 복구 모델에서 백업된 트랜잭션 로그를 복원하는 동안 데이터 손실에 노출되지 않습니다.If you satisfy these two conditions, you will not be exposed to any data loss while restoring a transaction log that was backed up under the bulk-logged recovery model..

참고!Note! 대량 작업 중에 전체 복구 모델로 전환하면 대량 작업 로깅이 최소 로깅에서 전체 로깅으로 바뀌며 그 반대의 경우도 마찬가지입니다.If you switch to the full recovery model during a bulk operation, bulk operations logging changes from minimal logging to full logging, and vice versa.

필수 사용 권한 Required permissions

데이터베이스에 대한 ALTER 권한이 필요합니다.Requires ALTER permission on the database.

SQL Server Management Studio 사용 Using SQL Server Management Studio

복구 모델을 보거나 변경하려면To view or change the recovery model

  1. SQL Server 데이터베이스 엔진SQL Server Database Engine의 해당 인스턴스에 연결한 다음 개체 탐색기에서 서버 이름을 클릭하여 서버 트리를 확장합니다.After connecting to the appropriate instance of the SQL Server 데이터베이스 엔진SQL Server Database Engine, in Object Explorer, click the server name to expand the server tree.

  2. 데이터베이스를 확장하고 해당 데이터베이스에 따라 사용자 데이터베이스를 선택하거나 시스템 데이터베이스 를 확장한 다음 시스템 데이터베이스를 선택합니다.Expand Databases, and, depending on the database, either select a user database or expand System Databases and select a system database.

  3. 데이터베이스를 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭하면 데이터베이스 속성 대화 상자가 열립니다.Right-click the database, and then click Properties, which opens the Database Properties dialog box.

  4. 페이지 선택 창에서 옵션을 클릭합니다.In the Select a page pane, click Options.

  5. 현재 복구 모델이 복구 모델 목록 상자에 표시됩니다.The current recovery model is displayed in the Recovery model list box.

  6. 필요에 따라 복구 모델을 변경하려면 다른 모델 목록을 선택합니다.Optionally, to change the recovery model select a different model list. 전체, 대량 로그또는 단순을 선택할 수 있습니다.The choices are Full, Bulk-logged, or Simple.

  7. 확인을 클릭합니다.Click OK.

Transact-SQL 사용 Using Transact-SQL

복구 모델을 보려면To view the recovery model

  1. 데이터베이스 엔진Database Engine에 연결합니다.Connect to the 데이터베이스 엔진Database Engine.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.From the Standard bar, click New Query.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다.Copy and paste the following example into the query window and click Execute. 이 예에서는 모델 데이터베이스의 복구 모델을 배우기 위해 sys.databases 카탈로그 뷰를 쿼리하는 방법을 보여줍니다.This example shows how to query the sys.databases catalog view to learn the recovery model of the model database.

SELECT name, recovery_model_desc  
   FROM sys.databases  
      WHERE name = 'model' ;  
GO  

복구 모델을 변경하려면To change the recovery model

  1. 데이터베이스 엔진Database Engine에 연결합니다.Connect to the 데이터베이스 엔진Database Engine.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.From the Standard bar, click New Query.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다.Copy and paste the following example into the query window and click Execute. 이 예에서는 model ALTER DATABASE FULL 문의 SET RECOVERY 옵션을 사용하여 데이터베이스의 복구 모델을 로 변경하는 방법을 보여 줍니다.This example shows how to change the recovery model in the model database to FULL by using the SET RECOVERY option of the ALTER DATABASE statement.

USE master ;  
ALTER DATABASE model SET RECOVERY FULL ;  

권장 사항: 복구 모델을 변경한 후 Recommendations: After you change the recovery model

  • 전체 및 대량 로그 복구 모델 간에 전환한 후After switching between the full and bulk-logged recovery models

    • 대량 작업을 완료한 후에는 즉시 전체 복구 모드로 다시 전환하세요.After completing the bulk operations, immediately switch back to full recovery mode.

    • 대량 로그 복구 모델에서 다시 전체 복구 모델로 전환한 후 로그를 백업합니다.After switching from the bulk-logged recovery model back to the full recovery model, back up the log.

      참고: 백업 전략에 따라 계속해서 주기적인 데이터베이스, 로그 및 차등 백업 작업을 수행합니다.NOTE: Your backup strategy remains the same: continue performing periodic database, log, and differential backups.

  • 단순 복구 모델에서 전환한 후After switching from the simple recovery model

    • 전체 복구 모델이나 대량 로그 복구 모델로 전환한 후 즉시 전체 또는 차등 데이터베이스 백업을 수행하여 로그 체인을 시작합니다.Immediately after switching to the full recovery model or bulk-logged recovery model, take a full or differential database backup to start the log chain.

      참고: 전체 로그 복구 모델이나 대량 로그된 복구 모델로의 전환은 첫 번째 데이터 백업 후에만 적용됩니다.NOTE: The switch to the full or bulk-logged recovery model takes effect only after the first data backup.

    • 정기적인 로그 백업을 예약하고 해당 일정에 따라 복원 계획을 업데이트합니다.Schedule regular log backups, and update your restore plan accordingly.

      중요IMPORTANT!!!! 로그를 백업합니다.Back up your logs!! 로그를 자주 백업하지 않으면 트랜잭션 로그가 확장되어 디스크 공간이 부족해질 수 있습니다.If you do not back up the log frequently enough, the transaction log can expand until it runs out of disk space!

  • 단순 복구 모델로 전환한 후After switching to the simple recovery model

    • 트랜잭션 로그 백업에 대한 모든 예약된 작업을 중단합니다.Discontinue any scheduled jobs for backing up the transaction log.

    • 정기적 데이터베이스 백업이 예약 되어 있는지 확인합니다.Ensure periodic database backups are scheduled. 데이터베이스를 백업하는 것은 데이터를 보호하고 트랜잭션 로그의 비활성 부분을 자르는 데 필수적입니다.Backing up your database is essential both to protect your data and to truncate the inactive portion of the transaction log.

참고 항목See Also

복구 모델(SQL Server) Recovery Models (SQL Server)
트랜잭션 로그(SQL Server) The Transaction Log (SQL Server)
ALTER DATABASE(Transact-SQL) ALTER DATABASE (Transact-SQL)
sys.databases(Transact-SQL) sys.databases (Transact-SQL)
복구 모델(SQL Server)Recovery Models (SQL Server)