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


Наборы носителей, семейства носителей и резервные наборы данных (SQL Server)

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

В этой статье представлена базовая терминология резервного копирования и восстановления SQL Server и предназначена для читателей, которые являются новыми для SQL Server.

В этой статье описывается формат, который SQL Server использует для носителей резервного копирования, соответствия между носителями резервного копирования и устройствами резервного копирования, организацией резервных копий на носителе резервных копий и несколькими рекомендациями по наборам носителей и семействам носителей. В статье также описаны шаги инициализации или форматирования носителей резервного копирования, прежде чем использовать его в первый раз или заменить старый набор носителей новым набором носителей, как перезаписать старые резервные наборы резервных копий в набор носителей и как добавить новые резервные наборы в набор носителей.

Примечание.

Дополнительные сведения о резервном копировании SQL Server в хранилище BLOB-объектов Azure см. в статье Резервное копирование и восстановление SQL Server с использованием хранилища BLOB-объектов Azure.

Условия

Набор носителей

Упорядоченный набор носителей данных резервной копии в виде определенного количества ленточных устройств или дисков, на которые может быть записана одна или несколько операций резервного копирования, с использованием фиксированного типа и номера устройств резервного копирования.

Семейство медиа

Резервные копии, созданные на одном устройстве без зеркального отображения или на наборе устройств с зеркальным отображением в наборе носителей

Резервный набор данных

Содержимое резервной копии добавляется на набор носителей при успешной операции резервного копирования.

Общие сведения о наборах носителей, семействах носителей и резервных наборах

Резервные копии на наборе из одного или более носителей резервных копий образуют отдельный набор носителей. Набор носителей — упорядоченная коллекция носителей резервных копий, лент или дисковых файлов либо больших двоичных объектов Azure, на которые производили запись одна или несколько операций резервного копирования, получая доступ по фиксированному типу и номеру устройства. Данный набор носителей использует накопители на магнитной ленте или дисковые накопители либо большие двоичные объекты Azure, но не сочетание двух или нескольких типов носителей.

Например , устройства резервного копирования, объединенные в набор носителей, могут включать в себя три ленточных накопителя с именами \\.\TAPE0, \\.\TAPE1и \\.\TAPE2. Этот набор содержит только ленточные носители, имеющие не менее трех лент (по одной на ленточный накопитель). Тип и число устройств резервного копирования устанавливаются при создании набора носителей и их нельзя изменить. Однако при необходимости, между операциями резервного копирования и восстановления можно заменить устройство на другое устройство аналогичного типа.

Набор носителей создается на носителе резервной копии во время операции резервного копирования при форматировании носителя. Дополнительные сведения см. в разделе "Создание нового набора носителей" далее в этой статье. После форматирования каждый файл или лента содержат заголовок носителя и готовы к записи данных. После формирования заголовка операция резервного копирования продолжает создавать резервную копию указанных данных на все заданные устройства резервного копирования.

Примечание.

Для предотвращения потери данных в случае повреждения носителя (ленты или файла на диске), наборы носителей можно сделать зеркальными. Дополнительные сведения см. в разделе "Зеркальные резервные носители" (SQL Server).

Сжатые и несжатые резервные копии не могут выполняться вместе в наборе носителей. Любой выпуск SQL Server 2008 (10.0.x) или более поздней версии может считывать сжатые резервные копии. Дополнительные сведения см. в разделе "Сжатие резервных копий" (SQL Server).

Семейства носителей

Резервные копии, созданные на отдельном устройстве, не имеющем зеркального отображения, или на наборе устройств с зеркальным копированием, принадлежащем одному набору носителей, образуют семейство носителей. Количество устройств резервного копирования, используемых в наборе носителей, определяет количество семейств носителей в наборе носителей. Например, если набор носителей использует два незеркальных устройства резервного копирования, этот набор носителей содержит два семейства носителей.

В зеркальном наборе носителей каждое семейство носителей является зеркальным. Например, если шесть устройств резервного копирования формируют набор носителей, в котором используются два зеркала, этот набор содержит три семейства носителей, каждое из которых содержит по две резервных копии данных. Дополнительные сведения о зеркальных наборах носителей см. в разделе "Зеркальные резервные носители" (SQL Server).

Каждой ленте или диску в семействе носителей присваивается порядковый номер носителя. Порядковый номер носителя для диска всегда равен 1. Для семейства ленточных носителей порядковый номер исходной ленты равен 1, вторая лента получает номер 2 и т. д.

Заголовок носителя

Каждый том носителя резервной копии (дисковый файл или лента) содержит заголовок носителя, который создается первой операцией резервного копирования, использующей эту ленту или диск. Заголовок остается без изменений, пока носитель не будет отформатирован повторно.

Заголовок носителя содержит все сведения, необходимые, чтобы идентифицировать носитель (файл или ленту) и его место в семействе носителей. Эта информация включает:

  • Имя носителя.

    Имя носителя не является обязательным, но рекомендуется постоянно использовать имена носителей, чтобы однозначно их различать. Имя присваивается носителю во время форматирования.

  • Уникальный идентификатор набора носителей.

  • Количество семейств носителей в этом наборе носителей.

  • Порядковый номер семейства носителей, содержащего данный носитель.

  • Уникальный идентификатор семейства носителей.

  • Порядковый номер носителя в семействе носителей. Для дискового файла это значение всегда равно 1.

  • Содержит ли описание этого носителя метку MTF или описание носителя.

    Все носители, используемые для операции резервного копирования или восстановления, используют стандартный формат резервного копирования с именем Microsoft Tape Format (MTF). MTF позволяет пользователям задавать метку ленты, которая содержит описание, характерное для MTF. SQL Server сохраняет любую метку мультимедиа MTF, написанную другим приложением, но не записывает метки мультимедиа MTF.

  • Метка носителя в формате ленты Майкрософт или описание носителя (в тексте свободной формы).

  • Название программы резервного копирования, записавшей метку.

  • Уникальный идентификатор поставщика программного обеспечения, с помощью которого отформатирован носитель.

  • Дата и время записи метки.

  • Количество зеркал в наборе (от 1 до 4); 1 является признаком того, что устройство не является зеркальным.

SQL Server 2019 (15.x) может обрабатывать носители, отформатированные более ранними версиями SQL Server.

Резервные наборы данных

При успешном завершении операции резервного копирования к набору носителей добавляется один резервный набор данных . Резервный набор данных описывается в терминах набора носителей, на котором создан этот резервный набор. Если носитель резервной копии состоит только из одного семейства носителей, это семейство содержит весь резервный набор данных. Если носитель резервной копии состоит из нескольких семейств носителей, резервный набор данных распределяется между ними. На каждом носителе резервный набор данных содержит заголовок со своим описанием.

В этом примере показана инструкция Transact-SQL, которая создает набор носителей, вызываемого MyAdvWorks_MediaSet_1 для AdventureWorks2022 базы данных, используя три ленточных диска в качестве устройств резервного копирования:

BACKUP DATABASE AdventureWorks2022
TO TAPE = '\\.\tape0',
   TAPE = '\\.\tape1',
   TAPE = '\\.\tape2'
WITH FORMAT,
    MEDIANAME = 'MyAdvWorks_MediaSet_1';

В случае успешного выполнения данной операции резервного копирования будет создан новый набор носителей, содержащий заголовок, и один резервный набор данных, распределенный на трех магнитных лентах. Результаты представлены на следующем рисунке.

Схема заголовка носителя и первой резервной копии на трех кассетах.

Как правило, после создания набора носителей все последующие операции резервного копирования добавляют резервные наборы данных к этому набору носителей. Все носители, используемые резервным набором данных, составляют набор носителей независимо от числа вовлеченных в операцию носителей или устройств резервного копирования. Резервные наборы данных последовательно нумеруются согласно их позиции в наборе носителей, что позволяет указывать резервный набор для восстановления.

Каждая последующая операция резервного копирования требует одно и то же количество и тип резервных устройств. Содержимое каждой последующей резервной копии распределяется между носителями всех используемых устройств резервного копирования. Чтобы продолжить предыдущий пример, вторая операция резервного копирования (разностная резервная копия) добавляет сведения в тот же набор носителей:

BACKUP DATABASE AdventureWorks2022
TO TAPE = '\\.\tape0',
   TAPE = '\\.\tape1',
   TAPE = '\\.\tape2'
WITH NOINIT,
    MEDIANAME = 'AdventureWorksMediaSet1',
    DIFFERENTIAL;

Примечание.

Параметр NOINIT по умолчанию, но включен для ясности.

В случае успешного выполнения второй операции резервного копирования запись второго резервного набора данных на набор носителей производится со следующим распределением содержимого резервной копии.

Схема второго резервного набора, распределенного на три ленты носителей.

При восстановлении резервных копий вы можете использовать опцию FILE, чтобы указать, какие именно резервные копии следует использовать. В следующем примере показано использование FILE = <backup_set_file_number> условий при восстановлении полной резервной копии базы данных AdventureWorks2022, за которой следует разностная резервная копия на том же наборе носителей. Этот набор содержит три ленточных носителя, находящихся в накопителях на магнитной ленте \\.\tape0, tape1и tape2.

RESTORE DATABASE AdventureWorks2022
FROM TAPE = '\\.\tape0',
     TAPE = '\\.\tape1',
     TAPE = '\\.\tape2'
WITH MEDIANAME = 'AdventureWorksMediaSet1',
    FILE = 1,
    NORECOVERY;

RESTORE DATABASE AdventureWorks2022
FROM TAPE = '\\.\tape0',
     TAPE = '\\.\tape1',
     TAPE = '\\.\tape2'
WITH MEDIANAME = 'AdventureWorksMediaSet1',
    FILE = 2,
    RECOVERY;
GO

Сведения о таблицах журнала, которые хранят сведения о наборах носителей и их семействах носителей и резервных наборах данных, см. в разделе "Журнал резервного копирования" и "Сведения о заголовках" (SQL Server).

Число носителей резервной копии в наборе носителей зависит от нескольких факторов:

  • от количества устройств резервного копирования;
  • от типа устройств резервного копирования;
  • от количества резервных наборов данных.

Создайте новый набор носителей

Для создания нового набора носителей необходимо форматировать носитель резервной копии (одну или несколько магнитных лент или дисковых файлов). В процессе форматирования резервный носитель изменяется следующим образом.

  1. Удаляется старый заголовок (если он есть), фактически удаляется прежнее содержимое носителя резервной копии.

    При форматировании ленточного устройства удаляется все прежнее содержимое установленной на тот момент магнитной ленты. Форматирование диска затрагивает только файл, указанный для операции резервного копирования.

  2. Записывается новый заголовок носителя на носитель резервной копии (магнитную ленту или дисковый файл) в каждом из устройств резервного копирования.

Резервное копирование в существующий набор носителей

При резервном копировании в существующий набор носителей у вас есть следующие два варианта:

  • Добавление к существующему резервному набору данных.

    Чтобы использовать доступное пространство наилучшим образом, новые резервные наборы данных обычно добавляются к существующим наборам носителей. Добавление к резервной копии сохраняет любые предшествующие резервные копии. Дополнительные сведения см. в разделе "Добавление к существующим резервным наборам данных" далее в этом разделе.

    Добавление, которое является поведением BACKUP по умолчанию, можно явно указать с помощью параметра NOINIT.

  • Перезапись всех существующих резервных наборов данных текущими копиями с оставлением на месте текущего заголовка носителя.

    Резервное копирование SQL Server обеспечивает защиту, чтобы предотвратить случайное перезапись носителя. Однако резервная копия может автоматически переписать резервные наборы данных, которые достигли окончания предопределенного срока хранения.

    При копировании на ленту может иметь смысл оставлять заголовки лент. Дополнительные сведения см. в разделе "Перезапись резервных наборов данных" далее в этом разделе.

    Перезапись существующих резервных наборов данных указывается с помощью INIT параметра инструкции BACKUP .

Добавление к существующим резервным наборам

Резервные копии одной или разных баз данных в разные моменты времени могут храниться на одном носителе. При присоединении еще одного резервного набора данных к существующим копиям на носителе предыдущее содержимое носителя остается неизменным, и новая резервная копия записывается после окончания последней.

По умолчанию SQL Server всегда добавляет новые резервные копии к носителю. Присоединение может выполняться только в конец носителя. Например, если том мультимедиа содержит пять резервных наборов данных, невозможно пропустить первые три резервных набора, чтобы перезаписать четвертый резервный набор с новым резервным набором.

Если вы используете BACKUP WITH NOREWIND для резервного копирования лент, лента остается открытой в конце операции. Это позволяет записывать последующие резервные копии на ленту без ее перемотки и последующего поиска последнего резервного набора. Список открытых ленточных дисков можно найти в динамическом sys.dm_io_backup_tapes представлении управления. Дополнительные сведения см. в sys.dm_io_backup_tapes.

Резервные копии Microsoft Windows и резервные копии SQL Server могут совместно использовать один и тот же носитель, но они не взаимодействуют. Резервное копирование SQL Server не может создавать резервные копии данных Windows.

Внимание

Сжатые и несжатые резервные копии не могут выполняться вместе в наборе носителей. Любой выпуск SQL Server 2008 (10.0.x) и более поздних версий может считывать сжатые резервные копии. Дополнительные сведения см. в разделе "Сжатие резервных копий" (SQL Server).

Перезапись резервных наборов

Перезапись существующих резервных наборов данных указывается с помощью INIT параметра инструкции BACKUP . Этот параметр перезаписывает все резервные наборы на носителе и сохраняет заголовок носителя при наличии. Если у носителя нет заголовка, он будет создан.

При копировании на ленту может иметь смысл оставлять заголовки лент. При копировании на дисковые носители переписываются только файлы, используемые устройствами резервного копирования, которые указаны в операции резервного копирования; остальные файлы на дисках сохраняются неизменными. При перезаписи резервных копий сохраняется каждый существующий заголовок носителя, и новая резервная копия создается в качестве первой для устройства. Если нет существующего заголовка носителя, допустимый заголовок носителя с соответствующим именем носителя и описанием носителя записывается автоматически. Если существующий заголовок носителя недопустим, операция резервного копирования завершается. Если носитель пуст, новый заголовок носителя создается с заданным MEDIANAME, MEDIAPASSWORD и MEDIADESCRIPTION, если они присутствуют.

Резервный носитель не перезаписывается, если существует одно из следующих условий:

  • Существующие резервные копии на носителе не истекли. (Если SKIP задано, срок действия не проверяется.)

    Дата истечения срока хранения указывает день, когда истечет срок хранения резервной копии, и она сможет быть заменена другой копией. Дату истечения срока хранения резервной копии можно указать при ее создании. По умолчанию срок действия определяется набором media retention параметров с sp_configure дополнительными сведениями, см. sp_configure.

  • Имя носителя, если указано, не соответствует имени на резервном носителе.

    Имя носителя представляет собой описательное имя, которое используется, чтобы облегчить распознавание носителя.

Если вы уверены, что хотите перезаписать существующий носитель (например, если вы знаете, что резервные копии на ленте больше не нужны), можно явно пропустить эти проверки.

Если носитель резервного копирования является паролем, защищенным Microsoft Windows, Microsoft SQL Server не записывает на носитель. Чтобы перезаписать защищенный паролем носитель, нужно его заново инициализировать.

Порядковые номера

Для нескольких семейств носителей в наборе носителей или нескольких резервных носителей в семействе носителей важен правильный порядок. Поэтому резервное копирование назначает порядковые номера следующими способами.

  • Последовательные семейства носителей в наборе носителей.

    Семейства носителей в наборе носителей последовательно нумеруются в соответствие с их позицией в наборе носителей. Номер семейства носителей записывается в family_sequence_number столбце backupmediafamily таблицы.

  • Физический носитель в семействе носителей.

    Порядковый номер носителя указывает на место физического носителя в семействе носителей. Порядковый номер начального носителя резервной копии равен 1. Он обозначен цифрой 1, второй (первый дополнительный носитель) обозначен цифрой 2 и т.д. При восстановлении из резервного набора данных наличие порядковых номеров носителей позволяет гарантировать, что оператор, выполняющий восстановление, монтирует носители в правильном порядке.

Несколько устройств

При использовании нескольких ленточных накопителей или дисковых файлов необходимо помнить о следующем.

  • При резервном копировании.

    Весь набор носителей, созданный операцией резервного копирования, должен целиком использоваться всеми последующими операциями резервного копирования. Например, если в созданном наборе носителей используется два накопителя на магнитной ленте для резервного копирования, то все последующие операции резервного копирования, включающие этот набор носителей, должны использовать два устройства резервного копирования.

  • При восстановлении.

    Для любого восстановления из резервных копий дисков и для любого сетевого восстановления все семейства носителей должны быть одновременно подключены. При восстановлении вне сети с ленточных устройств резервного копирования можно обработать семейства носителей с меньшего количества устройств резервного копирования. Каждое семейство носителей полностью обрабатывается перед тем, как начинается обработка другого. Семейства носителей всегда обрабатываются параллельно, за исключением случаев, когда они восстанавливаются с использованием одного устройства.

Создайте новый набор носителей

Добавление новой резервной копии к существующему носителю

Перезапись существующих резервных наборов резервных копий

Задать дату окончания срока действия

Просмотр медиа и семейных последовательных номеров

Просмотр резервных наборов на определенном устройстве резервного копирования

Прочитайте заголовок медиафайла в резервной копии