Principais diferenças: o espelhamento de banco de dados e a replicação de banco de dados são duas técnicas de alta disponibilidade de dados para servidores de banco de dados. Na replicação, dados e objetos de banco de dados são copiados e distribuídos de um banco de dados para outro. Ele reduz a carga do servidor de banco de dados original e todos os servidores nos quais o banco de dados foi copiado estão tão ativos quanto o servidor mestre. Por outro lado, o espelhamento de banco de dados cria cópias de um banco de dados em duas instâncias de servidor diferentes (principal e espelho). Essas cópias espelhadas funcionam como cópias suspensas e nem sempre estão ativas, como no caso da replicação de dados.
O comportamento dos servidores mestre e escravo é geralmente o mesmo. Qualquer alteração nos dados também é refletida nos servidores escravos. Essa técnica pode ser usada para copiar os dados em mais de um banco de dados. A replicação parcial é implementada apenas para um subconjunto de tabelas ou colunas de linhas e, portanto, não deve replicar essencialmente todo o banco de dados.
O espelhamento de banco de dados se refere às técnicas pelas quais as cópias redundantes de um banco de dados são criadas e mantidas. A cópia espelhada é consistentemente sincronizada com o banco de dados principal. Essa técnica ajuda a garantir a disponibilidade ininterrupta de dados e também reduz o tempo de inatividade, que pode ocorrer devido a corrupção ou perda de dados. Durante o processo de atualização, o espelhamento de banco de dados fornece pelo menos uma cópia viável para ser acessada.
As técnicas de replicação e espelhamento também são usadas em combinações para obter maior disponibilidade de bancos de dados. A principal diferença entre a replicação e o espelhamento é que, diferentemente do espelhamento, não há servidores em espera na replicação, pois todos os servidores agem como servidores ativos. O espelhamento é preferido quando se deseja diminuir o tempo de inatividade e se quiser ter uma solução econômica no contexto do armazenamento compartilhado, switches etc. Por outro lado, a replicação geralmente é preferida em um cenário em que o processamento distribuído precisa ser suportado pelo compartilhamento a carga de trabalho de um aplicativo.
Comparação entre Espelhamento e Replicação de Banco de Dados:
Espelhamento de Banco de Dados | Replicação | |
Definição | O espelhamento de banco de dados cria cópias de um banco de dados em duas instâncias de servidor diferentes. Essas cópias funcionam como cópias suspensas e nem sempre estão ativas, como no caso de replicação de dados. | Na replicação, dados e objetos de banco de dados são copiados e distribuídos de um banco de dados para outro. Ele reduz a carga do servidor de banco de dados original e todos os servidores nos quais o banco de dados foi copiado estão tão ativos quanto o servidor mestre. |
Vantagens | O espelhamento de banco de dados ajuda a reduzir o tempo de inatividade planejado e não planejado da seguinte forma:
|
|
Desvantagens (SQL Server 2008) |
|
|