Instruções Transact-SQL para Grupos de disponibilidade Always OnTransact-SQL statements for Always On availability groups

APLICA-SE A: SimSQL Server NãoBanco de Dados SQL do Azure NãoAzure Synapse Analytics (SQL DW) NãoParallel Data Warehouse APPLIES TO: YesSQL Server NoAzure SQL Database NoAzure Synapse Analytics (SQL DW) NoParallel Data Warehouse

Este tópico apresenta as instruções Transact-SQLTransact-SQL que oferecem suporte à implantação do Grupos de disponibilidade AlwaysOnAlways On availability groups e à criação e ao gerenciamento de grupos de disponibilidade, réplicas de disponibilidade e bancos de dados de disponibilidade.This topic introduces the Transact-SQLTransact-SQL statements that support deploying Grupos de disponibilidade 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 cria um ponto de extremidade de espelhamento de banco de dados, caso não exista nenhum na instância de servidor.CREATE ENDPOINT ... FOR DATABASE_MIRRORING creates a database mirroring endpoint, if none exists on the server instance. Cada instância de servidor na qual você pretende implantar o Grupos de disponibilidade AlwaysOnAlways On availability groups ou o espelhamento de banco de dados requer um ponto de extremidade de espelhamento de banco de dados.Every server instance on which you intend to deploy Grupos de disponibilidade AlwaysOnAlways On availability groups or database mirroring requires a database mirroring endpoint.

Execute essa instrução na instância de servidor em que você está criando o ponto de extremidade.Execute this statement on the server instance on which you are creating the endpoint. É possível criar somente um ponto de extremidade de espelhamento de banco de dados em uma instância.You can create only one database mirroring endpoint on a given server instance. Para obter mais informações, consulte O ponto de extremidade de espelhamento de banco de dados (SQL Server).For more information, see The Database Mirroring Endpoint (SQL Server).

CREATE AVAILABILITY GROUPCREATE AVAILABILITY GROUP

CREATE AVAILABILITY GROUP cria um novo grupo de disponibilidade e opcionalmente um ouvinte de grupo de disponibilidade.CREATE AVAILABILITY GROUP creates a new availability group and optionally an availability group listener. No mínimo, você deve especificar sua instância de servidor local que se tornará a réplica primária inicial.Minimally, you must specify your local server instance, which will become the initial primary replica. Opcionalmente, você também pode especificar até quatro réplicas secundárias.Optionally, you can also specify up to four secondary replicas.

Execute CREATE AVAILABILITY GROUP na instância do SQL ServerSQL Server em que você deseja hospedar a réplica primária inicial de seu novo grupo de disponibilidade.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. Essa instância de servidor deve residir em um nó de um WSFC (Windows Server Failover Cluster) (para obter mais informações, consulte Pré-requisitos, restrições e recomendações para grupos de disponibilidade 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 oferece suporte à alteração de um grupo de disponibilidade existente ou de ouvinte de grupo de disponibilidade e ao failover de um grupo de disponibilidade.ALTER AVAILABILITY GROUP supports changing an existing availability group or availability group listener and for failing over an availability group.

Execute ALTER AVAILABILITY GROUP na instância do SQL ServerSQL Server que hospeda a réplica primária atual.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 ...

As opções da cláusula SET HADR da instrução ALTER DATABASE permitem unir um banco de dados secundário ao grupo de disponibilidade do banco de dados primário correspondente, removem um banco de dados unido e suspendem a sincronização de dados em um banco de dados unido e retomam a sincronização de dados.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 remove um grupo de disponibilidade especificado e todas as suas réplicas.DROP AVAILABILITY GROUP removes a specified availability group and all of its replicas. DROP AVAILABILITY GROUP pode ser executado em qualquer nó Grupos de disponibilidade AlwaysOnAlways On availability groups no cluster de failover do WSFC.DROP AVAILABILITY GROUP can be run from any Grupos de disponibilidade AlwaysOnAlways On availability groups node in the WSFC failover cluster.

Restrições nas instruções Transact-SQL AVAILABILITY GROUPRestrictions on the AVAILABILITY GROUP Transact-SQL Statements

As instruções Transact-SQLTransact-SQL CREATE AVAILABILITY GROUP, ALTER AVAILABILITY GROUP e DROP AVAILABILITY GROUP têm as seguintes limitações:The CREATE AVAILABILITY GROUP, ALTER AVAILABILITY GROUP, and DROP AVAILABILITY GROUP Transact-SQLTransact-SQL statements have the following limitations:

  • Com exceção de DROP AVAILABILITY GROUP, a execução dessas instruções requer que o serviço HADR seja habilitado na instância do 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. Para obter mais informações, consulte Habilitar e desabilitar Grupos de Disponibilidade AlwaysOn (SQL Server).For more information, see Enable and Disable Always On Availability Groups (SQL Server).

  • Essas instruções não podem ser executadas dentro de transações ou lotes.These statements cannot be executed within transactions or batches.

  • Embora elas se empenhem ao máximo para fazer a limpeza após uma falha, elas não garantem a reversão de todas as alterações após a falha.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. No entanto, os sistemas devem ser capazes de tratar e, em seguida, ignorar as falhas parciais.However, systems should be able cleanly handle and then ignore partial failures.

  • Essas instruções não oferecem suporte a expressões ou variáveis.These statements do not support expressions or variables.

  • Se uma instrução Transact-SQLTransact-SQL for executada enquanto outra recuperação ou ação do grupo de disponibilidade estiver em andamento, a instrução retornará um erro.If a Transact-SQLTransact-SQL statement is executed while another availability group action or recovery is in process, the statement returns an error. Espere a conclusão da ação ou da recuperação e repita a instrução, se necessário.Wait for the action or recovery to complete, and retry the statement, if necessary.

Consulte TambémSee Also

Visão geral dos grupos de disponibilidade AlwaysOn (SQL Server)Overview of Always On Availability Groups (SQL Server)