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


Обзор командлетов PowerShell для групп доступности AlwaysOn (SQL Server)

Microsoft PowerShell ― это оболочка командной строки для задач и язык скриптов, разработанный специально для администрирования систем. Always On группы доступности предоставляют набор командлетов PowerShell в SQL Server 2014, которые позволяют развертывать, администрировать и отслеживать группы доступности, реплики доступности и базы данных доступности.

Примечание

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

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

Примечание

Список разделов электронной документации по SQL Server 2014 г., в котором описывается использование командлетов для выполнения задач Always On групп доступности, см. в разделе "Связанные задачи" статьи Общие сведения о группах доступности AlwaysOn (SQL Server).

Настройка экземпляра сервера для групп доступности AlwaysOn

Командлеты Описание Поддерживается на
Disable-SqlAlwaysOn Отключает функцию групп доступности Always On на экземпляре сервера. Экземпляр сервера, указанный параметром Path, InputObject или параметром Name. (Должен быть выпуском SQL Server, поддерживающим Always On группы доступности.)
Enable-SqlAlwaysOn Включает Always On группы доступности на экземпляре SQL Server 2014, поддерживающем функцию групп доступности Always On. Сведения о поддержке групп доступности Always On см. в разделе Предварительные требования, ограничения и рекомендации для групп доступности AlwaysOn (SQL Server). Любой выпуск SQL Server, поддерживающий Always On группы доступности.
New-SqlHadrEndPoint Создает новую конечную точку зеркального отображения базы данных на экземпляре сервера. Эта конечная точка необходима для перемещения данных между базой данных-источником и базой данных-получателем. Любой экземпляр SQL Server
Set-SqlHadrEndpoint Изменяет свойства существующей конечной точки зеркального отображения базы данных, например имя, состояние и свойства проверки подлинности. Экземпляр сервера, который поддерживает Always On группы доступности и не имеет конечной точки зеркального отображения базы данных

Резервное копирование и восстановление баз данных и журналов транзакций

Командлеты Описание Поддерживается на
Backup-SqlDatabase Создает резервную копию данных или журнала. Любая база данных в сети (для групп доступности Always On, база данных на экземпляре сервера, на котором размещена основная реплика).
Restore-SqlDatabase Восстанавливает резервную копию. Любой экземпляр SQL Server (для групп доступности Always On экземпляр сервера, на котором размещается вторичная реплика)

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

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

Создание группы доступности и управление ею

Командлеты Описание Поддерживается на
New-SqlAvailabilityGroup Создает новую группу доступности. Экземпляр сервера, в котором будет размещена первичная реплика
Remove-SqlAvailabilityGroup Удаляет группу доступности. Экземпляр сервера с включенным компонентом HADR
Set-SqlAvailabilityGroup Устанавливает свойства группы доступности; включение и отключение режимов «в сети» и «вне сети» группы доступности Экземпляр сервера, в котором размещена первичная реплика
Switch-SqlAvailabilityGroup Запускает одну из следующих форм отработки отказа.

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

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

Создание прослушивателя групп доступности и управление им

Командлет Описание Поддерживается на
New-SqlAvailabilityGroupListener Создает прослушиватель группы доступности и привязывает его к существующей группе доступности. Экземпляр сервера, в котором размещена первичная реплика
Set-SqlAvailabilityGroupListener Изменяет порт существующего прослушивателя группы доступности. Экземпляр сервера, в котором размещена первичная реплика
Add-SqlAvailabilityGroupListenerStaticIp Добавляет статический IP-адрес в конфигурацию существующего прослушивателя группы доступности. IP-адрес может быть адресом IPv4 с подсетью или адресом IPv6. Экземпляр сервера, в котором размещена первичная реплика

Создание реплики доступности и управление ею

Командлеты Описание Поддерживается на
New-SqlAvailabilityReplica Создает новую реплику доступности. Вы можете использовать параметр -AsTemplate для создания в памяти объекта реплики доступности для каждой новой реплики доступности. Экземпляр сервера, в котором размещена первичная реплика
Join-SqlAvailabilityGroup Присоединяет вторичную реплику к группе доступности. Экземпляр сервера, в котором размещена вторичная реплика
Remove-SqlAvailabilityReplica Удаляет реплику доступности. Экземпляр сервера, в котором размещена первичная реплика
Set-SqlAvailabilityReplica Устанавливает свойства реплики доступности. Экземпляр сервера, в котором размещена первичная реплика

Добавление базы данных доступности и управление ею

Командлеты Описание Поддерживается на
Add-SqlAvailabilityDatabase Добавляет базу данных в группу доступности на первичной реплике.

Присоединяет вторичную базу данных к группе доступности на вторичной реплике.
Любой экземпляр сервера, на котором размещается реплика доступности (поведение отличается для первичных и вторичных реплик)
Remove-SqlAvailabilityDatabase Удаляет базу данных из группы доступности на первичной реплике.

Удаляет локальную базу данных-получатель из локальной вторичной реплики на вторичной реплике.
Любой экземпляр сервера, на котором размещается реплика доступности (поведение отличается для первичных и вторичных реплик)
Resume-SqlAvailabilityDatabase Возобновляет перемещение данных для приостановленной базы данных доступности. Экземпляр сервера, на котором была приостановлена база данных.
Suspend-SqlAvailabilityDatabase Приостанавливает перемещение данных в любой базе данных доступности. Любой экземпляр сервера, на котором размещена реплика доступности.

Отслеживание работоспособности групп доступности

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

Важно!

Для выполнения этих командлетов необходимо иметь разрешения CONNECT, VIEW SERVER STATE и VIEW ANY DEFINITION.

Командлет Описание Поддерживается на
Test-SqlAvailabilityGroup Оценивает работоспособность группы доступности при помощи оценки состояния политик управления SQL Server. Любой экземпляр сервера, на котором размещена реплика доступности.*
Test-SqlAvailabilityReplica Оценивает работоспособность реплик доступности при помощи оценки состояния политик управления SQL Server. Любой экземпляр сервера, на котором размещена реплика доступности.*
Test-SqlDatabaseReplicaState Оценивает работоспособность базы данных доступности на всех присоединенных репликах доступности при помощи оценки состояния политик управления SQL Server. Любой экземпляр сервера, на котором размещена реплика доступности.*

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

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

См. также:

Обзор групп доступности AlwaysOn (SQL Server)
Получение справок по SQL Server PowerShell