Retomar um banco de dados de disponibilidade (SQL Server)

Aplica-se a:SQL Server

Você pode retomar um banco de dados de disponibilidade suspenso nos grupos de disponibilidade Always On usando o SQL Server Management Studio, o Transact-SQL ou o PowerShell no SQL Server. A retomada de um banco de dados suspenso coloca o banco de dados no estado SYNCHRONIZING. A retomada do banco de dados primário também retoma todos os bancos de dados secundários que foram suspensos devido à suspensão do banco de dados primário. Se um banco de dados secundário foi suspenso localmente, na instância de servidor que hospeda a réplica secundária, o banco de dados secundário deverá ser retomado localmente. Quando um determinado banco de dados secundário e o banco de dados primário correspondente estiverem no estado SYNCHRONIZING, a sincronização de dados é retomada no banco de dados secundário.

Observação

Suspender e retomar um banco de dados secundário AlwaysOn não afetam diretamente a disponibilidade do banco de dados primário. Porém, suspender um banco de dados secundário pode afetar os recursos de redundância e failover para o banco de dados primário, até que o banco de dados secundário suspenso seja retomado. Isto está em contraste com o espelhamento de banco de dados, onde o estado de espelhamento é suspenso no banco de dados espelho e no banco de dados principal até que o espelhamento seja retomado. Suspender um banco de dados secundário AlwaysOn suspende o movimento de dados em todos os bancos de dados secundários correspondentes, e os recursos de failover e a redundância são eliminados para esse banco de dados até que o banco de dados primário seja retomado.

Limitações e Restrições

O comando RESUME retorna assim que é aceito pela réplica que hospeda o banco de dados de destino, mas, na verdade, a retomada do banco de dados ocorre de forma assíncrona.

Pré-requisitos

  • Você deve estar conectado à instância de servidor que hospeda o banco de dados a ser retomado.
  • O grupo de disponibilidade deve estar online.
  • O banco de dados primário deve estar online e disponível.

Permissões

Requer a permissão ALTER no banco de dados.

Requer a permissão ALTER AVAILABILITY GROUP no grupo de disponibilidade, a permissão CONTROL AVAILABILITY GROUP, a permissão ALTER ANY AVAILABILITY GROUP ou a permissão CONTROL SERVER.

Como usar o SQL Server Management Studio.

Para retomar um banco de dados secundário

  1. No Pesquisador de Objetos, conecte-se à instância de servidor que hospeda a réplica de disponibilidade na qual você deseja retomar o banco de dados e expanda a árvore de servidores.

  2. Expanda os nós Alta Disponibilidade AlwaysOn e Grupos de Disponibilidade.

  3. Expanda o grupo de disponibilidade.

  4. Expanda o nó Bancos de dados de Disponibilidade , clique com o botão direito do mouse no banco de dados e clique em Retomar a Movimentação de Dados.

  5. Na caixa de diálogo Retomar a Movimentação de Dados , clique em OK.

Observação

Para retomar bancos de dados adicionais neste local de réplica, repita as etapas 4 e 5 para cada banco de dados.

Usando o Transact-SQL

Para retomar um banco de dados secundário que foi suspenso localmente

  1. Conecte-se à instância do servidor que hospeda a réplica secundária, cujo banco de dados você deseja retomar.

  2. Retome o banco de dados secundário usando a seguinte instrução ALTER DATABASE:

    ALTER DATABASE database_name SET HADR RESUME;

Usando o PowerShell

Para retomar um banco de dados secundário

  1. Altere o diretório (cd) para a instância de servidor que hospeda a réplica cujo banco de dados você deseja retomar. Para obter mais informações, consulte Pré-requisitosanteriormente neste tópico.

  2. Use o cmdlet Resume-SqlAvailabilityDatabase para retomar o grupo de disponibilidade.

    Por exemplo, o comando a seguir retoma a sincronização dos dados para o banco de dados de disponibilidade MyDb3 no grupo de disponibilidade MyAg.

    Resume-SqlAvailabilityDatabase `   
    -Path SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MyAg\Databases\MyDb3  
    

    Observação

    Para exibir a sintaxe de um cmdlet, use o cmdlet Get-Help no ambiente do SQL Server PowerShell. Para obter mais informações, consulte Get Help SQL Server PowerShell.

Para configurar e usar o provedor do SQL Server PowerShell

Related Tasks

Consulte Também

Visão geral dos Grupos de Disponibilidade AlwaysOn (SQL Server)