Добавление вторичной реплики к группе доступности Always On

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

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

Требования и ограничения

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

Дополнительные сведения см. в статье Предварительные требования, ограничения и рекомендации для групп доступности Always On (SQL Server).

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

Разрешения

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

Мы слушаем: если вы нашли что-то устаревшее или неправильное в этой статье, например шаг или пример кода, сообщите нам. Можно воспользоваться кнопкой Эта страница в разделе Отзывы внизу страницы. Обычно мы читаем отзывы про материалы по SQL на следующий день. Благодарим вас.

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

Добавление реплики

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

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

  3. Щелкните правой кнопкой группу доступности и выберите одну из следующих команд.

    • Чтобы запустить мастер добавления реплики в группу доступности, выберите команду Добавить реплику . Дополнительные сведения см. в разделе Использование мастера добавления реплики в группу доступности (среда SQL Server Management Studio).

    • Либо выберите команду Свойства , чтобы открыть диалоговое окно Свойства группы доступности . Чтобы добавить реплику в этом диалоговом окне, выполните следующие действия.

      1. На панели Реплики доступности этого диалогового окна нажмите кнопку Добавить . Будет создана запись реплики с пустым полем «Экземпляр сервера».

      2. Введите имя экземпляра сервера, который соответствует обязательным условиям для размещения реплики доступности.

      Чтобы добавить другие реплики, повторите предыдущие шаги. После завершения добавления реплик нажмите кнопку ОК для завершения операции.

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

Добавление реплики

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

  2. Добавьте новую вторичную реплику в группу доступности с помощью предложения ADD REPLICA ON инструкции ALTER AVAILABILITY GROUP. В предложении ADD REPLICA ON необходимо указать параметры ENDPOINT_URL, AVAILABILITY_MODE и FAILOVER_MODE. Другие параметры реплики (BACKUP_PRIORITY, SECONDARY_ROLE, PRIMARY_ROLE и SESSION_TIMEOUT) являются необязательными. Дополнительные сведения см. в статье ALTER AVAILABILITY GROUP (Transact-SQL).

    Например, следующая инструкция Transact-SQL создает новую реплику в группе доступности MyAG в экземпляре сервера по умолчанию, размещенном на компьютере COMPUTER04, с URL-адресом конечной точки TCP://COMPUTER04.Adventure-Works.com:5022'. Данная реплика поддерживает переход на другой ресурс вручную и режим доступности «Asynchronous Commit».

    ALTER AVAILABILITY GROUP MyAG ADD REPLICA ON 'COMPUTER04'   
       WITH (  
             ENDPOINT_URL = 'TCP://COMPUTER04.Adventure-Works.com:5022',  
             AVAILABILITY_MODE = ASYNCHRONOUS_COMMIT,  
             FAILOVER_MODE = MANUAL  
             );  
    

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

Добавление реплики

  1. Перейдите в каталог (cd) экземпляра сервера, в котором находится первичная реплика.

  2. Используйте командлет New-SqlAvailabilityReplica .

    Например, следующая команда добавляет реплику доступности в существующую группу доступности с именем MyAg. Данная реплика поддерживает переход на другой ресурс вручную и режим доступности «Asynchronous Commit». В роли вторичной эта реплика будет поддерживать соединения с доступом на чтение, позволяя разгрузить обработку только для чтения для этой реплики.

    $agPath = "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MyAg"  
    $endpointURL = "TCP://PrimaryServerName.domain.com:5022"  
    $failoverMode = "Manual"  
    $availabilityMode = "AsynchronousCommit"  
    $secondaryReadMode = "AllowAllConnections"  
    
    New-SqlAvailabilityReplica -Name SecondaryServer\Instance `
    -EndpointUrl $endpointURL `
    -FailoverMode $failoverMode `
    -AvailabilityMode $availabilityMode `
    -ConnectionModeInSecondaryRole $secondaryReadMode `
    -Path $agPath
    

    Примечание.

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

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

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

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

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

  2. Присоедините новую вторичную реплику к группе доступности. Дополнительные сведения см. в статье Присоединение вторичной реплики к группе доступности Always On.

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

  4. Присоедините все новые базы данных-получатели к группе доступности. Дополнительные сведения см. в статье Присоединение базы данных-получателя к группе доступности (SQL Server).

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

Управление репликой доступности

См. также

ALTER AVAILABILITY GROUP (Transact-SQL)
Обзор групп доступности Always On (SQL Server)
Создание и настройка групп доступности (SQL Server)
Использование панели мониторинга AlwaysOn (среда SQL Server Management Studio)
Отслеживание групп доступности (Transact-SQL)