Problema ao estabelecer um Mirror
Recentemente estive em um cliente para configurar o Database Mirroring em uma base de dados. Pedi a ele para fazer um backup da base de dados inicial e restaurar no mirror, para que quando eu chegasse já fizesse o mirror.
Depois de criar os endpoints, ao tentar iniciar o mirror, vinha a mensagem abaixo:
"The server network address "TCP://<FQDN>:5022" can not be reached or does not exist. Check the network address name and that the ports for the local and remote endpoints are operational. (Microsoft SQL Server, Error: 1418)"
Na figura acima, estou omitindo o nome do servidor por questões de privacidade. No lugar da faixa em branco viria o FQDN do servidor de um dos endpoints. A porta 5022 é padrão, mas pode ser alterada durante a configuração.
Foram feitos os seguintes testes:
a) Ping no FQDN partindo do servidor A para o servidor B e vice-versa: OK
b) Telnet na porta 5022, partindo também de um lado para o outro: OK
c) Login utilizado tem permissão CONNECT nos endpoints: OK.
Solução: o restore do banco de dados não havia sido feito com a opção "WITH NORECOVERY". Embora a mensagem de erro nos leve a acreditar que o problema ocorre devido a uma falha de rede, esta foi a causa no nosso caso. É obrigatório que o restore da base de dados seja feito com esta opção, mas isto não foi percebido pela pessoa que fez o restore.
Apenas decidi dividir esta experiência aqui pois, pesquisando pela internet, vi pessoas discutindo em forums o mesmo sintoma, sem atingir uma solução.