Inquiridor
Qual o melhor método de replicação de uma ou mais DATABASE dentro da minha organização?

Discussão Geral
-
Srs,
Tenho uma dúvida relacionada a replicação das DATABASES do SQL Server 2008 R2, após uma pesquisa, encontrei uma solução de configurar a opação Transaction Log Shipping, a mesma foi configurada e está em funcionamento com um delay de 5 minutos. Hoje ao ler um artigo sobre replicação observei a opção "Mirroring" dentro das propiedades da database que desejo replicar, sendo assim, gostaria de saber qual a diferença entre elas e qual a melhor opção para a configuração de uma replicação "on-line" do banco para caso ocorra algum problema com o servidor em produção outro servidor assuma o serviço na rede.
Obrigado,
Rodrigo H. Amorim
Todas as Respostas
-
Rodrigo,
A pergunta que deve ser feita é: "Quanto tempo você pode ficar com informações desatualizadas ou com o seu ambiente fora do ar?"
De acordo com a sua resposta você vai encontra qual tecnologia seria a mais indicada.
Tanto Mirroring como Database Replication são soluções de contingência de dados, a forma de uso e necessidade que podem fazer a diferença.
Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
-
Caro Junior,
Bom dia.
A necessidade na verdade é fazer com que o ambiente não pare caso ocorra qualquer tipo de problema no host do SQL, nesse caso vc me aconselhelharia usar o Mirroring? Sendo que no Database Replication tenho uma perca de 5 minutos de informação.
Agradeço a paciencia, estou iniciando no SQL e ainda tenho muito que aprender.
Obrigado pelo apoio.
-
Rodrigo, bom dia!
Primeiramente as diferenças entre as opções:
0 - Fail Over: Troca de bases online -> Offline (Problema) e Offline -> Online (Subir instancia preparada).
1 - Mirror: Opção de espelhamento, aonde a base A fica online em um primeiro momento sendo que as transações executadas são re-executadas na base B (Outra instancia). Com o mirror o Fail-Over pode ser automatico com a utilização de um servidor witness (Normalmente uma instancia express) que fica monitorando se a instancia principal continua de pé, caso contrario a instancia que estava em segundo plano é colocada online. No mirror podemos ter as sub opções e High Safaty e High Availability, na primeira a transação só é finalizada na instancia principal se for finalizada na instancia secundaria (Ou seja, replicação da transação de modo sincrono), ja na segunda é assincrono, então é finalizado na primeira e depois transferida para a segunda. O "problema" que vejo com o mirror é que a base secundaria fica sempre em modo inacessivel e voce deverá ter hardware duplicado (Disco)
2 - Log Shipping: Envio dos arquivos de backup de log e restauração em outra instancia em um processo ciclico e constante. Opção bem simples porem não há Fail-Over automatico, a vantagem aqui é o fato de a base secundaria conseguir ficar em modo de leitura, para eventuais consultas por exemplo, ou seja, o espaço utilizado em disco processador e tudo mais podera ser usado para funções secundarias alem de "Alta disponibilidade", o "problema" do log shipping é que se executado de 5 em 5 minutos voce esta afirmano que esta pronto para perder 5 minutos de informação se necessario, se é um custo que voce consegue lidar...tudo bem...
Cuiado com algumas palavras. Replication em banco de dados possui outro contexto e é uma outra feature, ou seja Mirror é diferente de log shipping que por sua vez é diferente de Replication (Replicação).
A analise o do que é o melhor ou não para seu ambiente depende de sua analise, se postar mais informações talvez possamos ajuda-lo melhor.Fabrizzio A. Caputo
MCT
Certificações:
Oracle OCA 11g
MCITP SQL Server 2008 Implementation and Maintenance
MCITP SQL Server 2008 Developer
ITIL V3 Foundation
Blog Pessoal: www.fabrizziocaputo.wordpress.com
Twitter: @FabrizzioCaputo
Email: fabrizzio.antoniaci@gmail.com -
Rodrigo,
Eu vejo que no seu caso como você não pode ter um gap de tempo muito grande entre os seus ambientes, o Database Mirroring de forma assíncrona, o dado foi atualizado no servidor de origem é enviado imediatamente para o servidor destino.
Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
-