Инструкции Transact-SQL для групп доступности AlwaysOnTransact-SQL Statements for Always On Availability Groups

ОБЛАСТЬ ПРИМЕНЕНИЯ: даSQL Server нетБаза данных SQL AzureнетХранилище данных SQL AzureнетParallel Data WarehouseAPPLIES TO: yesSQL Server noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

В этом разделе приведены общие сведения об инструкциях Transact-SQLTransact-SQL , которые поддерживают развертывание Группы доступности AlwaysOnAlways On availability groups , а также создание и управление данной группой доступности, репликой доступности и базой данных доступности.This topic introduces the Transact-SQLTransact-SQL statements that support deploying Группы доступности AlwaysOnAlways On availability groups and creating and managing an given availability group, availability replica and availability database.

CREATE ENDPOINTCREATE ENDPOINT

Инструкция CREATE ENDPOINT ... FOR DATABASE_MIRRORING создает конечную точку зеркального отображения базы данных, если таковая не существует на экземпляре сервера.CREATE ENDPOINT ... FOR DATABASE_MIRRORING creates a database mirroring endpoint, if none exists on the server instance. Для каждого экземпляра сервера, на котором намечено развертывание Группы доступности AlwaysOnAlways On availability groups или зеркального отображения базы данных, требуется конечная точка зеркального отображения базы данных.Every server instance on which you intend to deploy Группы доступности AlwaysOnAlways On availability groups or database mirroring requires a database mirroring endpoint.

Эта инструкция выполняется на экземпляре сервера, на котором создается конечная точка.Execute this statement on the server instance on which you are creating the endpoint. На каждом конкретном экземпляре сервера можно создать только одну конечную точку зеркального отображения базы данных.You can create only one database mirroring endpoint on a given server instance. Дополнительные сведения см. в разделе Конечная точка зеркального отображения базы данных (SQL Server).For more information, see The Database Mirroring Endpoint (SQL Server).

CREATE AVAILABILITY GROUPCREATE AVAILABILITY GROUP

CREATE AVAILABILITY GROUP создает новую группу доступности и, при необходимости, прослушиватель группы доступности.CREATE AVAILABILITY GROUP creates a new availability group and optionally an availability group listener. Как минимум необходимо указать экземпляр локального сервера, который станет начальной первичной репликой.Minimally, you must specify your local server instance, which will become the initial primary replica. Дополнительно можно указать до четырех вторичных реплик.Optionally, you can also specify up to four secondary replicas.

Выполните CREATE AVAILABILITY GROUP в экземпляре SQL ServerSQL Server, на котором должна размещаться начальная первичная реплика создаваемой группы доступности.Execute CREATE AVAILABILITY GROUP on the instance of SQL ServerSQL Server that you want to host the initial primary replica of your new availability group. Этот экземпляр сервера должен находиться на узле отказоустойчивого кластера WSFC. Дополнительные сведения см. в статье Предварительные требования, ограничения и рекомендации для групп доступности AlwaysOn (SQL Server).This server instance must reside on a node of a Windows Server Failover Cluster (WSFC) (for more information, see Prerequisites, Restrictions, and Recommendations for Always On Availability Groups (SQL Server).

ALTER AVAILABILITY GROUPALTER AVAILABILITY GROUP

ALTER AVAILABILITY GROUP поддерживает изменение существующей группы доступности или прослушивателя группы доступности для перехода на группу доступности.ALTER AVAILABILITY GROUP supports changing an existing availability group or availability group listener and for failing over an availability group.

Выполните ALTER AVAILABILITY GROUP в экземпляре SQL ServerSQL Server , на котором размещается текущая первичная реплика.Execute ALTER AVAILABILITY GROUP on the instance of SQL ServerSQL Server that hosts the current primary replica.

ALTER DATABASE ... SET HADR ...ALTER DATABASE ... SET HADR ...

Параметры предложения SET HADR инструкции ALTER DATABASE позволяют присоединить базу данных-получателя к группе доступности соответствующей базы данных-источника, удалить присоединенную базу данных, отложить синхронизацию данных в присоединенной базе данных, а также возобновить синхронизацию данных.The options of the SET HADR clause of the ALTER DATABASE statement enables you to join a secondary database to the availability group of the corresponding primary database, remove a joined database, and suspend data synchronization on a joined database, and resume data synchronization.

DROP AVAILABILITY GROUPDROP AVAILABILITY GROUP

ИнструкцияDROP AVAILABILITY GROUP удаляет указанную группу доступности и все ее реплики.DROP AVAILABILITY GROUP removes a specified availability group and all of its replicas. Инструкция DROP AVAILABILITY GROUP может быть запущена с любого узла Группы доступности AlwaysOnAlways On availability groups в отказоустойчивом кластере WSFC.DROP AVAILABILITY GROUP can be run from any Группы доступности AlwaysOnAlways On availability groups node in the WSFC failover cluster.

Ограничения на инструкции AVAILABILITY GROUP языка Transact-SQLRestrictions on the AVAILABILITY GROUP Transact-SQL Statements

Инструкции CREATE AVAILABILITY GROUP, ALTER AVAILABILITY GROUP и DROP AVAILABILITY GROUP Transact-SQLTransact-SQL имеют следующие ограничения.The CREATE AVAILABILITY GROUP, ALTER AVAILABILITY GROUP, and DROP AVAILABILITY GROUP Transact-SQLTransact-SQL statements have the following limitations:

  • За исключением DROP AVAILABILITY GROUP, для выполнения этих инструкций требуется, чтобы была включена служба HADR на экземпляре SQL ServerSQL Server.With the exception of DROP AVAILABILITY GROUP, executing these statements requires that the HADR service is enabled on the instance of SQL ServerSQL Server. Дополнительные сведения см. в разделе Включение и отключение групп доступности AlwaysOn (SQL Server).For more information, see Enable and Disable Always On Availability Groups (SQL Server).

  • Эти инструкции не могут выполняться в пределах транзакций или пакетов.These statements cannot be executed within transactions or batches.

  • Несмотря на то, что эти инструкции предназначены для восстановления после сбоя, они не гарантируют выполнения отката всех изменений при сбое.Though they make a best effort to clean up after a failure, these statements do not guarantee that they will roll back all changes on failure. Однако системы должны быть способны четко выполнять обработку и пропуск частичных сбоев.However, systems should be able cleanly handle and then ignore partial failures.

  • Эти инструкции не поддерживают выражения или переменные.These statements do not support expressions or variables.

  • Если во время действия группы доступности или восстановления выполняется инструкция Transact-SQLTransact-SQL , эта инструкция возвращает ошибку.If a Transact-SQLTransact-SQL statement is executed while another availability group action or recovery is in process, the statement returns an error. В случае необходимости дождитесь завершения действия или восстановления, а затем повторно выполните инструкцию.Wait for the action or recovery to complete, and retry the statement, if necessary.

См. также:See Also

Обзор групп доступности AlwaysOn (SQL Server)Overview of Always On Availability Groups (SQL Server)