Настройка резервного копирования в репликах доступности (SQL Server)

В этом разделе описывается настройка резервной копии вторичной реплики для группы доступности AlwaysOn с помощью среды Среда SQL Server Management Studio, Transact-SQL или PowerShell в SQL Server 2012.

ПримечаниеПримечание

Основные сведения о резервном копировании для вторичных реплик см. в разделе Активные вторичные реплики: Резервное копирование на вторичных репликах (группы доступности AlwaysOn).

  • Перед началом работы

    Предварительные требования

    Безопасность

  • Настройка резервного копирования во вторичных репликах с помощью:

    Среда SQL Server Management Studio

    Transact-SQL

    PowerShell

  • Дальнейшие действия. После настройки резервного копирования во вторичных репликах

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

  • См. также

Перед началом работы

Предварительные требования

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

Безопасность

Разрешения

Задача

Разрешения

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

Требуется членство в предопределенной роли сервера sysadmin и разрешение сервера CREATE AVAILABILITY GROUP, ALTER ANY AVAILABILITY GROUP или CONTROL SERVER.

Изменение группы доступности или реплики доступности

Необходимо разрешение ALTER AVAILABILITY GROUP для группы доступности, разрешение CONTROL AVAILABILITY GROUP, разрешение ALTER ANY AVAILABILITY GROUP или разрешение CONTROL SERVER.

Значок стрелки, используемый со ссылкой «В начало»[В начало]

Использование среды SQL Server Management Studio

Настройка резервного копирования во вторичных репликах

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

  2. Разверните узел Высокий уровень доступности AlwaysOn и узел Группы доступности.

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

  4. В диалоговом окне Свойства групп доступности перейдите на страницу Настройки резервного копирования.

  5. На панели Где должно происходить резервное копирование? выберите один из способов автоматизированного резервного копирования для группы доступности:

    • Предпочтение вторичной
      Указывает, что резервное копирование должно выполняться на вторичной реплике, за исключением тех случаев, когда в режиме «в сети» находится только первичная реплика. В этом случае резервное копирование будет выполняться на первичной реплике. Это параметр по умолчанию.

    • Только вторичная
      Указывает, что резервное копирование никогда не выполняется на первичной реплике. Если первичная реплика является единственной репликой, находящейся в режиме «в сети», резервное копирование не будет выполняться.

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

      Важное примечаниеВажно!

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

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

    Важное примечаниеВажно!

    Параметр автоматического резервного копирования не применяется принудительно. Интерпретация данного приоритета зависит от логики (при ее наличии), которая внесена в задания резервного копирования для баз данных в указанной группе доступности. Параметр автоматического резервного копирования не влияет на выполнение нерегламентированного резервного копирования. Дополнительные сведения см. в разделе Дальнейшие действия. После настройки резервного копирования во вторичных репликах далее в этой статье.

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

    • Экземпляр сервера
      Имя экземпляра SQL Server, в котором размещается группа доступности.

    • Приоритет резервного копирования (низкий = 1, высокий = 100)
      Указывает приоритет выполнения резервного копирования на данной реплике по отношению к другим репликам из той же группы доступности. Значение представляет собой целое число в диапазоне от 0 до 100. 1 указывает минимальный приоритет, 100 — наивысший приоритет. Если Backup Priority = 1, реплика доступности будет выбрана для создания резервных копий только в случае, если реплики доступности с более высоким приоритетом отсутствуют.

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

  7. Для фиксации изменений нажмите кнопку ОК.

Альтернативные пути доступа к странице настройки резервного копирования

Значок стрелки, используемый со ссылкой «В начало»[В начало]

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

Настройка резервного копирования во вторичных репликах

  1. Подключитесь к экземпляру сервера, где размещена первичная реплика.

  2. Для новой группы доступности используйте инструкцию CREATE AVAILABILITY GROUP (Transact-SQL). При изменении существующей группы доступности воспользуйтесь инструкцией ALTER AVAILABILITY GROUP (Transact-SQL).

Значок стрелки, используемый со ссылкой «В начало»[В начало]

Использование PowerShell

Настройка резервного копирования во вторичных репликах

  1. Установите значение по умолчанию (cd) равным серверу экземпляра, на котором размещена первичная реплика.

  2. При необходимости настройте приоритет каждой реплики доступности, которую необходимо добавить или изменить. Этот приоритет используется экземпляром сервера, на котором размещается первичная реплика, при принятии решения о том, какая реплика должна обработать запрос автоматического резервного копирования для базы данных в группе доступности (выбирается реплика с максимальным приоритетом). Значением приоритета может быть любое целое число от 0 до 100 включительно. Приоритет 0 указывает, что реплика не должна считаться кандидатом на обработку запросов резервного копирования. Значение по умолчанию — 50.

    При добавлении реплики доступности в группу доступности воспользуйтесь командлетом New-SqlAvailabilityReplica. При изменении существующей реплики доступности воспользуйтесь командлетом Set-SqlAvailabilityReplica. В любом случае укажите параметр BackupPriority n, где n представляет собой значение от 0 до 100.

    Например, следующая команда присваивает приоритету резервного копирования реплики доступности MyReplica значение 60.

    Set-SqlAvailabilityReplica -BackupPriority 60 `
    -Path SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MyAg\AvailabilityReplicas\MyReplica
    
  3. Также настройте приоритет автоматического резервного копирования для группы доступности, которая создается или изменяется. Этот параметр указывает, как задание резервного копирования вычисляет первичную реплику при выборе места для создания резервных копий. Значение по умолчанию предпочитают вторичные реплики.

    При создании группы доступности используйте командлет New-SqlAvailabilityGroup. При изменении существующей группы доступности воспользуйтесь командлетом Set-SqlAvailabilityGroup. В любом случае укажите параметр AutomatedBackupPreference.

    Здесь:

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

      Важное примечаниеВажно!

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

    • SecondaryOnly
      Указывает, что резервное копирование никогда не выполняется на первичной реплике. Если первичная реплика является единственной репликой, находящейся в режиме «в сети», резервное копирование не будет выполняться.

    • Secondary
      Указывает, что резервное копирование должно выполняться на вторичной реплике, за исключением тех случаев, когда в режиме «в сети» находится только первичная реплика. В этом случае резервное копирование будет выполняться на первичной реплике. Это режим по умолчанию.

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

    Важное примечаниеВажно!

    Параметр AutomatedBackupPreference не применяется принудительно. Интерпретация данного приоритета зависит от логики (при ее наличии), которая внесена в задания резервного копирования для баз данных в указанной группе доступности. Параметр автоматического резервного копирования не влияет на выполнение нерегламентированного резервного копирования. Дополнительные сведения см. в разделе Дальнейшие действия. После настройки резервного копирования во вторичных репликах далее в этой статье.

    Например, следующая команда задает свойству AutomatedBackupPreference группы доступности MyAg значение SecondaryOnly. Автоматическое резервное копирование баз данных в этой группе доступности никогда не будет выполняться в первичной реплике, а будет перенаправляться на вторичную реплику с наивысшим приоритетом резервного копирования.

    Set-SqlAvailabilityGroup `
    -Path SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MyAg `
    -AutomatedBackupPreference SecondaryOnly
    
ПримечаниеПримечание

Чтобы просмотреть синтаксис командлета, воспользуйтесь командлетом Get-Help в среде SQL Server PowerShell. Дополнительные сведения см. в разделе Получение справок по SQL Server PowerShell.

Настройка и использование поставщика SQL Server PowerShell

Значок стрелки, используемый со ссылкой «В начало»[В начало]

Дальнейшие действия. После настройки резервного копирования во вторичных репликах

Чтобы настройка автоматического резервного копирования учитывалась для данной группы доступности на каждом экземпляре сервера, где размещена реплика доступности, приоритет резервного копирования которой больше нуля (>0), необходимо создать скрипты заданий резервного копирования для баз данных в группе доступности. Чтобы определить, является ли текущая реплика предпочитаемой репликой резервного копирования, выполните функцию sys.fn_hadr_backup_is_preferred_replica в скрипте резервного копирования. Если реплика доступности, размещенная на текущем экземпляре сервера, является предпочтительной для резервного копирования, эта функция возвращает значение 1. В противном случае функция возвращает значение 0. Выполнив простой скрипт на каждой реплике доступности, которая запрашивает эту функцию, можно определить, на какой реплике должно выполняться данное задание резервного копирования. Например, типичный фрагмент скрипта задания резервного копирования выглядит следующим образом:

IF (NOT sys.fn_hadr_backup_is_preferred_replica(@DBNAME))
BEGIN
      Select ‘This is not the preferred replica, exiting with success’;
      RETURN 0 – This is a normal, expected condition, so the script returns success
END
BACKUP DATABASE @DBNAME TO DISK=<disk>
   WITH COPY_ONLY;

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

СоветСовет

Если задание резервного копирования создается в мастере планов обслуживания, то в это задание автоматически включается логика скрипта, которая вызывает и проверяет функцию sys.fn_hadr_backup_is_preferred_replica. Однако задание резервного копирования не будет возвращать сообщение «Это не предпочтительная реплика». Необходимо создать задания для каждой базы данных доступности на каждом экземпляре сервера, на котором размещена реплика доступности для этой группы доступности.

Значок стрелки, используемый со ссылкой «В начало»[В начало]

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

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

Представление

Сведения

Соответствующие столбцы

sys.fn_hadr_backup_is_preferred_replica

Является ли текущая реплика предпочитаемой репликой резервного копирования?

Неприменимо

sys.availability_groups

Параметр автоматизированного резервного копирования

automated_backup_preference

automated_backup_preference_desc

sys.availability_replicas

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

backup_priority

sys.dm_hadr_availability_replica_states

Является реплика локальной по отношению к экземпляру сервера?

Текущая роль

Состояние работы

Состояние подключения

Исправность синхронизации реплики доступности

is_local

role, role_desc

operational_state, operational_state_desc

connected_state, connected_state_desc

synchronization_health, synchronization_health_desc

Значок стрелки, используемый со ссылкой «В начало»[В начало]

См. также

Значок стрелки, используемый со ссылкой «В начало»[В начало]

См. также

Основные понятия

Обзор групп доступности AlwaysOn (SQL Server)

Активные вторичные реплики: Резервное копирование на вторичных репликах (группы доступности AlwaysOn)