Forçar o serviço numa sessão de espelhamento da base de dados (Transact-SQL)

Aplica-se a: SQL Server

Em modo de alto desempenho e alta segurança, sem failover automático, se o servidor principal falhar enquanto o servidor espelho está disponível, o proprietário da base de dados pode disponibilizar a base de dados forçando o serviço a fazer failover (com possível perda de dados) para a base de dados espelhada. Esta opção está disponível apenas sob todas as seguintes condições:

  • O servidor principal está indisponível.

  • O WITNESS está definido como OFF ou está ligado ao servidor espelho.

Atenção

O serviço forçado é estritamente um método de recuperação de desastres. Forçar o serviço pode envolver alguma perda de dados. Portanto, force o serviço apenas se estiver disposto a correr o risco de perder alguns dados para restabelecer imediatamente o serviço da base de dados. Se forçar a manutenção do serviço implicar o risco de causar a perda de uma quantidade significativa de dados, recomendamos que interrompa o espelhamento e ressincronize manualmente as bases de dados. Para mais informações sobre os riscos de forçar o serviço, veja Modos de Operação por Espelhamento de Base de Dados.

Forçar o serviço suspende a sessão e inicia um novo fork de recuperação. O efeito de forçar o serviço é semelhante ao de remover o espelhamento e recuperar a antiga base de dados principal. No entanto, forçar a entrada em serviço permite a ressincronização das bases de dados (com possível perda de dados) quando o espelhamento é retomado.

Para forçar o funcionamento numa sessão de espelhamento de bases de dados

  1. Liga-te ao servidor espelho.

  2. Emita a seguinte declaração:

    ALTER DATABASE <database_name>SET PARTNER FORCE_SERVICE_ALLOW_DATA_LOSS

    onde <database_name> é a base de dados espelhada.

    O servidor espelho transita imediatamente para o servidor principal, e o espelhamento é suspenso.

Ver também

ALTER DATABASE (Transact-SQL)
Modos de Operação por Espelhamento de Base de Dados