O login falha ao usar o Espelhamento SQL

2

Eu tenho um cenário peculiar em que o meu banco de dados espelhado não pode ser acessado em um servidor, mas pode, por outro. Eu tentei especificar um login SQL específico para fazê-lo funcionar, mas quando o banco de dados falha no outro servidor, o SQL não consegue mais usar essas credenciais. Eu também tentei usar a segurança integrada para usar a conta de administrador de domínio, que achei que seria consistente entre os dois servidores. Sem sorte. Então, o que posso fazer para remediar este problema e existe uma maneira de ter a instância de um servidor pegar as contas de segurança do outro. Ambos os servidores estão em um domínio confiável.

    
por Middletone 26.05.2009 / 08:47

2 respostas

3

O espelhamento de banco de dados do SQL Server é um mecanismo de alta disponibilidade em nível de banco de dados. Qualquer coisa que afete bancos de dados que não sejam o que você está espelhando (ex. Logins armazenados no mestre) precisa ser propagada manualmente para o espelho após o failover acontecer, ou (mais idealmente) regularmente durante a manutenção agendada.

Se os logins forem copiados e você ainda estiver com problemas, provavelmente está vendo uma incompatibilidade de SID. Dê uma olhada aqui para mais informações e uma resolução.

    
por 26.05.2009 / 08:47
0

Durante qualquer espelhamento, apenas o principal está disponível, o espelho está off-line.

No modo de alta disponibilidade, há também uma testemunha, necessária para o failover automático. É necessário haver dois nós que concordem em quem é o mestre, para evitar que ambos os nós se tornem mestre.

Você pode usar uma conexão como esta para conectar-se automaticamente ao ativo dos dois servidores:

Data Source=myServerAddress;Failover Partner=myMirrorServerAddress;Initial
Catalog=myDataBase;Integrated Security=True;
    
por 26.05.2009 / 20:05