Поделиться через


Резервное копирование и восстановление: системные базы данных (SQL Server)

Область применения: SQL Server

SQL Server поддерживает набор системных баз данных, называемых системными базами данных, которые являются важными для работы экземпляра сервера. После каждого значительного обновления необходимо обязательно создавать резервные копии ряда системных баз данных: Системные базы данных, которые необходимо всегда создавать резервные копии, modelmasterи msdb. Если любая база данных использует репликацию на экземпляре сервера, необходимо также создать резервную копию системной distribution базы данных. Резервные копии этих системных баз данных позволяют восстановить и восстановить систему SQL Server после сбоя системы, например потерю устройства хранения.

В следующей таблице перечислены все системные базы данных.

Системная база данных Description Необходимые резервные копии? простого восстановления Комментарии
master База данных, которая записывает все сведения о уровне системы SQL Server. Да Простая master Резервное копирование как можно чаще, чтобы защитить данные достаточно для ваших бизнес-потребностей. Рекомендуем составить расписание регулярного резервного копирования, которое можно дополнить созданием резервных копий после значительных обновлений. Резервные копии журналов транзакций master не поддерживаются.
model Шаблон для всех баз данных, созданных на экземпляре SQL Server. Да Пользователь, настраиваемый1 Резервное копирование выполняется model только при необходимости для бизнеса, например сразу после настройки параметров базы данных.

Рекомендуется создать только полные резервные modelкопии базы данных по мере необходимости. Так как model это мало и редко изменяется, резервное копирование журнала не требуется.
msdb База данных, используемая агент SQL Server для планирования оповещений и заданий, а также для операторов записи. msdb также содержит таблицы журнала, такие как таблицы журнала резервного копирования и восстановления. Да Простая (по умолчанию) msdb Резервное копирование при каждом обновлении.
База данных ресурсов (RDB) База данных только для чтения, содержащая копии всех системных объектов, которые входят в состав SQL Server No нет База данных ресурсов находится в mssqlsystemresource.mdf файле, который содержит только код. Поэтому SQL Server не может создать резервную копию базы данных ресурсов.

Примечание. Вы можете выполнить резервную копию на основе файлов или диска в mssqlsystemresource.mdf файле, рассматривая файл, как если бы он был двоичным (.exe) файлом, а не файлом базы данных. Но вы не можете использовать восстановление SQL Server в резервных копиях. Восстановление резервной копии mssqlsystemresource.mdf можно выполнить только вручную, и не забудьте не перезаписать текущую базу данных ресурсов с устаревшей или потенциально небезопасной версией.
tempdb Рабочая область для хранения временных или промежуточных результирующих наборов. Эта база данных создается повторно при каждом запуске экземпляра SQL Server. При завершении работы экземпляра сервера все данные tempdb удаляются окончательно. No Простая Вы не можете создать резервную копию системной tempdb базы данных.
Настройка распространения База данных, которая существует только в том случае, если сервер настроен как распространитель репликации. Эта база данных содержит метаданные и данные журнала для всех типов репликации, а также транзакции для репликации транзакций. Да Простая Сведения о резервном distribution копировании базы данных см. в статье "Резервное копирование и восстановление реплицированных баз данных".

1 . Сведения о текущей модели восстановления модели см. в разделе "Просмотр или изменение модели восстановления базы данных (SQL Server) или sys.database (Transact-SQL)".

Ограничения на восстановление системных баз данных

Системные базы данных можно восстановить только из резервных копий, созданных в версии SQL Server, запущенной в данный момент экземпляром сервера. Например, чтобы восстановить системную базу данных на экземпляре сервера под управлением SQL Server 2016 (13.x) с пакетом обновления 1 (SP1), необходимо использовать резервную копию базы данных, созданную после обновления экземпляра сервера до SQL Server 2016 (13.x) с пакетом обновления 1 (SP1).

Чтобы восстановить любую базу данных, необходимо запустить экземпляр SQL Server. Запуск экземпляра SQL Server требует, чтобы master база данных была доступна и по крайней мере частично доступна. Если master база данных станет неиспользуемой, вы можете вернуть базу данных в состояние, которое можно использовать в любом из следующих способов:

  • Восстановление master из текущей резервной копии базы данных.

    Если вы можете запустить экземпляр сервера, вы сможете восстановить master данные из полной резервной копии базы данных. Дополнительные сведения см. в разделе "Восстановление базы данных master" (Transact-SQL).

  • Полностью перестройте master .

    Если серьезный master ущерб не позволяет запускать SQL Server, необходимо перестроить.master Дополнительные сведения см. в разделе "Перестроение системных баз данных".

    Внимание

    Перестроение выполняет перестроение master всех системных баз данных.

В некоторых случаях проблемы, связанные с model восстановлением базы данных, могут потребовать перестроения системных баз данных или замены mdf файлов ldf для model базы данных. Дополнительные сведения см. в разделе "Перестроение системных баз данных".

Связанные задачи