Просмотр или изменение модели восстановления базы данных (SQL Server)View or Change the Recovery Model of a Database (SQL Server)

ОБЛАСТЬ ПРИМЕНЕНИЯ: даSQL Server нетБаза данных SQL AzureнетХранилище данных SQL AzureнетParallel Data WarehouseAPPLIES TO: yesSQL Server noAzure SQL Database noAzure 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. Существует три модели восстановления: простая модель восстановления, модель полного восстановления и модель восстановления с неполным протоколированием.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.

Более подробное объяснение см. в статье о моделях восстановления.For a more in depth explanation, see recovery models.

Перед началомBefore you begin

  • Back up the transaction log before switching from the full recovery or bulk-logged recovery model.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 StudioUsing SQL Server Management Studio

Просмотр или изменение модели восстановленияTo view or change the recovery model

  1. После подключения к соответствующему экземпляру компонента Компонент SQL Server Database EngineSQL Server Database Engineв обозревателе объектов разверните дерево сервера, щелкнув его имя.After connecting to the appropriate instance of the Компонент SQL Server Database EngineSQL 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.

Мы слушаем! Если вы обнаружили в этой статье устаревшие или недостоверные сведения, например инструкции или пример кода, сообщите нам.We are listening: If you find something outdated or incorrect in this article, such as a step or a code example, please tell us. Можно воспользоваться кнопкой Эта страница в разделе Отзывы внизу страницы.You can click the This page button in the Feedback section at the bottom of this page. Обычно мы читаем отзывы про материалы по SQL на следующий день.We read every item of feedback about SQL, typically the next day. Благодарим вас.Thanks.

Использование Transact-SQLUsing Transact-SQL

Просмотр модели восстановленияTo view the recovery model

  1. Установите соединение с компонентом Компонент Database EngineDatabase Engine.Connect to the Компонент Database EngineDatabase 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 модель восстановления для базы данных model .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 EngineDatabase Engine.Connect to the Компонент Database EngineDatabase Engine.

  2. На панели «Стандартная» нажмите Создать запрос.From the Standard bar, click New Query.

  3. Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить.Copy and paste the following example into the query window and click Execute. В этом примере показано, как переключить модель восстановления в базе данных model в режим FULL с помощью параметра SET RECOVERY инструкции ALTER DATABASE .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.

Related tasksRelated tasks

См. такжеRelated Content

См. также: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)