top of page
Foto do escritorCloudDB

Como Suspender a Movimentação do Always On em um Grupo de Disponibilidade Específico

Para suspender a movimentação do Always On em todos os bancos de dados de um grupo de disponibilidade específico, você pode usar o seguinte código SQL. Este script automatiza a suspensão do Always On em cada banco de dados pertencente ao grupo de disponibilidade especificado.


USE master;
GO
DECLARE @AGName NVARCHAR(128);
SET @AGName = 'NomeDoSeuGrupoDeDisponibilidade'; -- Substitua pelo nome do seu grupo de disponibilidade
-- Suspende cada banco de dados no grupo de disponibilidade
DECLARE @SQL NVARCHAR(MAX);
SET @SQL = '';
SELECT @SQL = @SQL + 'ALTER DATABASE [' + DB_NAME(d.database_id) + '] SET HADR SUSPEND;' + CHAR(13)
FROM sys.dm_hadr_database_replica_states d
JOIN sys.availability_groups g ON d.group_id = g.group_id
WHERE g.name = @AGName;
-- Executa o comando para suspender os bancos de dados
EXEC sp_executesql @SQL;

Explicação do Código

  1. Uso do Banco de Dados master:

  • O comando USE master assegura que o script está sendo executado no contexto do banco de dados mestre.

  1. Declaração de Variáveis:

  • @AGName: Variável que armazena o nome do grupo de disponibilidade. Substitua 'NomeDoSeuGrupoDeDisponibilidade' pelo nome real do seu grupo de disponibilidade.

  • @SQL: Variável que armazenará o comando SQL dinâmico.

  1. Construção do Comando SQL:

  • Um comando SELECT é usado para construir dinamicamente o comando ALTER DATABASE para cada banco de dados no grupo de disponibilidade especificado.

  • sys.dm_hadr_database_replica_states: Visualização de gerenciamento dinâmico que contém informações sobre o estado de replicação dos bancos de dados.

  • sys.availability_groups: Contém informações sobre os grupos de disponibilidade.

  • A cláusula WHERE filtra os bancos de dados pertencentes ao grupo de disponibilidade especificado.

  1. Execução do Comando SQL:

  • O comando construído é executado utilizando sp_executesql, que suspende o Always On para cada banco de dados do grupo de disponibilidade.

Este código é ideal para administradores de banco de dados que precisam suspender a funcionalidade Always On de todos os bancos de dados em um grupo de disponibilidade específico, proporcionando uma maneira eficiente e centralizada de realizar essa tarefa.

4 visualizações0 comentário

Posts recentes

Ver tudo

ALERTA DE NUMERO DE CONEXOES

Este código em T-SQL realiza várias operações relacionadas ao monitoramento e alerta do número de conexões em um servidor SQL Server....

Comments


bottom of page