Eu configurei o espelhamento de um banco de dados no SQL Server Standard Edition.
Depois disso, tentei ver se os dados foram sincronizados ou não.
Não consegui verificar os dados tirando um instantâneo do banco de dados, pois os instantâneos do banco de dados não estão disponíveis no SQL Server Standard Edition.
Existe alguma solução alternativa disponível para verificar se os dados estão sincronizados ou não?
Verifique a seguinte visualização do sistema:
Há uma riqueza de informações sobre o status de seus bancos de dados espelhados.
Se a coluna
mirroring_state_desc
contiver 'SYNCHRONIZED', ela está realmente sincronizada.O que
SYNCHRONIZED
indica é que todas as transações pendentes do mestre foram confirmadas com sucesso no banco de dados espelho.Se mostrar um status de
SYNCHRONIZING
, então o espelho está "atrás" do principal em algum grau.Você também pode usar o aplicativo Database Mirroring Monitor para monitorar o status dos bancos de dados espelhados.
Se você estiver executando a edição padrão, não há muito o que fazer e você terá que acreditar que o espelhamento está cumprindo sua tarefa. Em vez de se preocupar se os dados estão sendo enviados no espelho ou não ou se as alterações estão sendo refletidas, você deve monitorar as filas SEND e REDO usando a GUI. Nesse caso.
O tamanho da fila SEND mostra quanto log de transação foi gerado no servidor principal, mas ainda não foi enviado ao servidor espelho. Se não for zero, significa que o estado de espelhamento não está sincronizado. Além disso, o tamanho da fila SEND indica a quantidade de perda de dados que ocorrerá se o banco de dados principal sofrer um desastre.
Se você perceber que o tamanho da fila REDO está crescendo, isso significa que o servidor espelho não consegue acompanhar a quantidade de log enviada do servidor principal. Pode ser que haja carga de trabalho adicional no servidor espelho que esteja impedindo que o log do banco de dados espelho seja repetido o mais rápido possível. Também pode ser que o hardware físico no servidor espelho não seja tão capaz quanto o do servidor principal.
O tamanho da fila REDO mostra quanto log de transação existe no banco de dados espelho que ainda não foi reproduzido no banco de dados espelho.
Esses dois ajudarão você a saber quanto atrás do principal está do servidor espelho. Leia isso
Como alternativa, você pode fazer o failover do principal para o espelho, mas certifique-se antes do failover de que o espelho esteja totalmente sincronizado com o principal para evitar qualquer perda de dados. (se possível ou quando houver uma janela de manutenção) para verificar o status do servidor espelho. O failover IMO é a melhor maneira aqui de determinar e provar que as alterações estão realmente sendo refletidas se você precisar mostrar para algum propósito de auditoria com capturas de tela.