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


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

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

Замечание

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

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

Замечание

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Мониторинг здоровья групп доступности

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

Это важно

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

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

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

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

См. также

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