Обзор командлетов PowerShell для групп доступности AlwaysOn
Область применения: SQL Server
Microsoft PowerShell — это оболочка командной строки на основе задач и язык сценариев, разработанный специально для системного администрирования. Группы доступности AlwaysOn предоставляют набор командлетов PowerShell в SQL Server, которые позволяют развертывать, управлять и отслеживать группы доступности, реплики доступности и базы данных доступности.
Примечание.
Командлет PowerShell может завершиться после успешного инициирования действия. Это не означает, что предписанное действие, например отработка отказа для группы доступности, завершено. При создании скрипта для некой последовательности действий может оказаться необходимым проверить состояние действий и подождать из завершения.
Примечание.
Список разделов электронной документации на SQL Server, в которых описано использование командлетов для выполнения задач в группе доступности Always On, приведен в подразделе "Связанные задачи" статьи о группе доступности Always On.
Настройка экземпляра сервера для групп доступности AlwaysOn
Командлеты | Description | Поддерживается на |
---|---|---|
Disable-SqlAlwaysOn | Отключает функцию групп доступности AlwaysOn на экземпляре сервера. | Экземпляр сервера, указанный параметром Path, InputObjectили параметром Name . (Должен быть выпуском SQL Server, поддерживающим группы доступности AlwaysOn.) |
Enable-SqlAlwaysOn | Включает группы доступности AlwaysOn в экземпляре SQL Server, который поддерживает функцию групп доступности AlwaysOn. Дополнительные сведения о поддержке групп доступности Always On см. в статье Предварительные требования, ограничения и рекомендации для групп доступности Always On. | Любой выпуск SQL Server, поддерживающий группы доступности AlwaysOn. |
New-SqlHadrEndPoint | Создает новую конечную точку зеркального отображения базы данных на экземпляре сервера. Эта конечная точка необходима для перемещения данных между базой данных-источником и базой данных-получателем. | Любой экземпляр SQL Server |
Set-SqlHadrEndpoint | Изменяет свойства существующей конечной точки зеркального отображения базы данных, например имя, состояние и свойства проверки подлинности. | Экземпляр сервера, который поддерживает группы доступности AlwaysOn и не имеет конечной точки зеркального отображения базы данных |
Резервное копирование и восстановление баз данных и журналов транзакций
Командлеты | Description | Поддерживается на |
---|---|---|
Backup-SqlDatabase | Создает резервную копию данных или журнала. | Любая онлайн-база данных (для групп доступности AlwaysOn— база данных на экземпляре сервера, на котором размещена первичная реплика). |
Restore-SqlDatabase | Восстанавливает резервную копию. | Любой экземпляр SQL Server (для групп доступности AlwaysOn, экземпляр сервера, на котором размещена вторичная реплика) |
Внимание
При подготовке базы данных-получателя необходимо использовать параметр -NoRecovery в каждой команде Restore-SqlDatabase.
Дополнительные сведения об использовании этих командлетов для подготовки базы данных-получателя см. в статье Подготовка базы данных-получателя для присоединения к группе доступности Always On.
Создание группы доступности и управление ею
Командлеты | Description | Поддерживается на |
---|---|---|
New-SqlAvailabilityGroup | Создает новую группу доступности. | Экземпляр сервера, в котором будет размещена первичная реплика |
Remove-SqlAvailabilityGroup | Удаляет группу доступности. | Экземпляр сервера с включенным компонентом HADR |
Set-SqlAvailabilityGroup | Устанавливает свойства группы доступности; включение и отключение режимов «в сети» и «вне сети» группы доступности | Экземпляр сервера, в котором размещена первичная реплика |
Switch-SqlAvailabilityGroup | Запускает одну из следующих форм отработки отказа. Принудительная отработка отказа для группы доступности (возможна потеря данных). Переход на другой ресурс группы доступности вручную. |
Экземпляр сервера, на котором размещается целевая вторичная реплика |
Создание прослушивателя групп доступности и управление им
Командлет | Description | Поддерживается на |
---|---|---|
New-SqlAvailabilityGroupListener | Создает прослушиватель группы доступности и привязывает его к существующей группе доступности. | Экземпляр сервера, в котором размещена первичная реплика |
Set-SqlAvailabilityGroupListener | Изменяет порт существующего прослушивателя группы доступности. | Экземпляр сервера, в котором размещена первичная реплика |
Add-SqlAvailabilityGroupListenerStaticIp | Добавляет статический IP-адрес в конфигурацию существующего прослушивателя группы доступности. IP-адрес может быть адресом IPv4 с подсетью или адресом IPv6. | Экземпляр сервера, в котором размещена первичная реплика |
Создание реплики доступности и управление ею
Командлеты | Description | Поддерживается на |
---|---|---|
New-SqlAvailabilityReplica | Создает новую реплику доступности. Вы можете использовать параметр -AsTemplate для создания в памяти объекта реплики доступности для каждой новой реплики доступности. | Экземпляр сервера, в котором размещена первичная реплика |
Join-SqlAvailabilityGroup | Присоединяет вторичную реплику к группе доступности. | Экземпляр сервера, в котором размещена вторичная реплика |
Remove-SqlAvailabilityReplica | Удаляет реплику доступности. | Экземпляр сервера, в котором размещена первичная реплика |
Set-SqlAvailabilityReplica | Устанавливает свойства реплики доступности. | Экземпляр сервера, в котором размещена первичная реплика |
Добавление базы данных доступности и управление ею
Командлеты | Description | Поддерживается на |
---|---|---|
Add-SqlAvailabilityDatabase | Добавляет базу данных в группу доступности на первичной реплике. Присоединяет вторичную базу данных к группе доступности на вторичной реплике. |
Любой экземпляр сервера, на котором размещается реплика доступности (поведение отличается для первичных и вторичных реплик) |
Remove-SqlAvailabilityDatabase | Удаляет базу данных из группы доступности на первичной реплике. Удаляет локальную базу данных-получатель из локальной вторичной реплики на вторичной реплике. |
Любой экземпляр сервера, на котором размещается реплика доступности (поведение отличается для первичных и вторичных реплик) |
Resume-SqlAvailabilityDatabase | Возобновляет перемещение данных для приостановленной базы данных доступности. | Экземпляр сервера, на котором была приостановлена база данных. |
Suspend-SqlAvailabilityDatabase | Приостанавливает перемещение данных в любой базе данных доступности. | Любой экземпляр сервера, на котором размещена реплика доступности. |
Отслеживание работоспособности групп доступности
Следующие командлеты SQL Server позволяют отслеживать работоспособность группы доступности и ее реплик и баз данных.
Внимание
Для выполнения этих командлетов необходимо иметь разрешения CONNECT, VIEW SERVER STATE и VIEW ANY DEFINITION.
Командлет | Description | Поддерживается на |
---|---|---|
Test-SqlAvailabilityGroup | Оценивает работоспособность группы доступности при помощи оценки состояния политик управления SQL Server. | Любой экземпляр сервера, на котором размещена реплика доступности.* |
Test-SqlAvailabilityReplica | Оценивает работоспособность реплик доступности при помощи оценки состояния политик управления SQL Server. | Любой экземпляр сервера, на котором размещена реплика доступности.* |
Test-SqlDatabaseReplicaState | Оценивает работоспособность базы данных доступности на всех присоединенных репликах доступности при помощи оценки состояния политик управления SQL Server. | Любой экземпляр сервера, на котором размещена реплика доступности.* |
* Чтобы просмотреть сведения обо всех репликах доступности в группе доступности, используйте экземпляр сервера, на котором размещена первичная реплика.
Дополнительные сведения см. в статье Использование политик Always On для определения работоспособности группы доступности (SQL Server).
См. также
Обзор групп доступности Always On (SQL Server)
Получение справок по SQL Server PowerShell