none
Replicação de Dados SQL - Merge Entre Bases e Entre Servidores RRS feed

  • Pergunta

  • Olá A Todos,

    Fazendo uma pesquisa de como criar um replicação de dados no SQL conheci o SQL Replication.
    Achei um ferramenta muito boa para o que estou necessitando.

    Utilizei o tipo Merge, e está show de bola, porem estou com algumas duvidas
    que não achei solução e queria ver contigo, se terias como me ajudar?
     
    Vou o Senário para Você
     
    Banco de Dados 1 – Copulado de varias informações, onde neste SQL eu tenho
    o Distribuidor e Publicador.
    Banco de Dados 2 – Tenho todas as informações que estão no banco de dados
    1, onde neste SQL eu tenho a Assinatura
     

    Preciso criar o Banco de Dados 3, porem gostaria q esse banco de dados seja
    uma copia do Banco de Dados 2, porque? esse senário é uma rede de lojas, (DB1
    Servidor, DB2 Loja 1 e DB3 Loja 2”Nova”), como são mais de 4gb de banco fica
    impraticável inicializar o banco da loja 2 do zero Aguardando que a
    sincronização realize tudo.

    Minha duvida 2 é como criar 2 servidores de distribuição e publicação, onde eles se comuniquem entre si e as lojas com ambos. Onde se um deste servidores sair do ar o outro continua com as tarefas sem causar nenhum impacto entre das lojas, e logico com esse servidor voltar o mesmo é sincronizado novamente.

     
    Você tem alguma dica.
     
     
    Atenciosamente,

    Clauber Júnio de Mello Galvão
    quarta-feira, 14 de novembro de 2012 16:47

Respostas

  • Clauber,

    De acordo com este artigo no Technet a Microsoft não suporta a implementação de alta disponibilidade com merge replication.

    Você pode ter uma topologia em estrela com o servidor sendo o distribuidor para as duas lojas e elas vão se falar via distribuidor. O único problema é que o distribuidor vira um ponto de falha em potencial. Mas a alternativa, fazer um mesh entre todos os servidores, é super complicada, requer um monte de filtros (enviar apenas meus registros e receber apenas os dos outros dois servidores) e tudo configurado manualmente (falhas em potencial).

    Sobre a questão inicial da criação da base no novo servidor 2, essa inicialização é feita por um snapshot replication. Você pode fazer essa inicialização manualmente (offline) enviando os scripts gerados pelo SQL para o servidor 2 em pen drive, CD, DVD, etc. Veja as instruções aqui:

    http://technet.microsoft.com/en-us/library/ms151734(v=SQL.105).aspx

    http://technet.microsoft.com/en-us/library/ms151795(v=sql.105).aspx

    []s,


    Armando Lacerda

    quarta-feira, 23 de janeiro de 2013 12:41

Todas as Respostas

  • Clauber,

    Quando você fala em servidor sair do arquivo, você esta se referindo a máquina física? Neste caso temos que pensar em alta disponibilidade do ambiente, partindo para uma solução do tipo Cluster.


    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]

    quinta-feira, 22 de novembro de 2012 16:33
  • Clauber,

    Quando você fala em servidor sair do arquivo, você esta se referindo a máquina física? Neste caso temos que pensar em alta disponibilidade do ambiente, partindo para uma solução do tipo Cluster.


    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]

    Olá Junior,

    Serie digamos, tenho o Servidor 1 no local A e tenho o Servidor 2 no local B, ambos servidores fazendo Merge e as lojas fazendo merge com o Servidor 1 e 2... Por um problema fisico o servidor 1 para de funcionar o servidor 2 assume toda a carga de dados Merge para com as lojas.


    Atenciosamente, Clauber Júnio

    quinta-feira, 22 de novembro de 2012 16:41
  • Clauber,

    Ok, dois servidores, fazendo replicação Merge entre eles, até ai tudo bem.

    Hoje todas as lojas replicam dados para ambos os servidores?

    Se isso acontecer, o cenário fica mais fácil, pois mesmo que um pare o outro vai estar no ar, agora o problema é justamente a volta, pois poderemos ter uma sobrecarga ou custo de processamento considerável para equalizar os ambientes.


    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]

    quinta-feira, 22 de novembro de 2012 16:48
  • Clauber,

    Ok, dois servidores, fazendo replicação Merge entre eles, até ai tudo bem.

    Hoje todas as lojas replicam dados para ambos os servidores?

    Se isso acontecer, o cenário fica mais fácil, pois mesmo que um pare o outro vai estar no ar, agora o problema é justamente a volta, pois poderemos ter uma sobrecarga ou custo de processamento considerável para equalizar os ambientes.


    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]

    Olá Junior,

    Sim, todas as lojas replicam para ambos.


    Atenciosamente, Clauber Júnio

    quarta-feira, 16 de janeiro de 2013 15:26
  • Clauber,

    De acordo com este artigo no Technet a Microsoft não suporta a implementação de alta disponibilidade com merge replication.

    Você pode ter uma topologia em estrela com o servidor sendo o distribuidor para as duas lojas e elas vão se falar via distribuidor. O único problema é que o distribuidor vira um ponto de falha em potencial. Mas a alternativa, fazer um mesh entre todos os servidores, é super complicada, requer um monte de filtros (enviar apenas meus registros e receber apenas os dos outros dois servidores) e tudo configurado manualmente (falhas em potencial).

    Sobre a questão inicial da criação da base no novo servidor 2, essa inicialização é feita por um snapshot replication. Você pode fazer essa inicialização manualmente (offline) enviando os scripts gerados pelo SQL para o servidor 2 em pen drive, CD, DVD, etc. Veja as instruções aqui:

    http://technet.microsoft.com/en-us/library/ms151734(v=SQL.105).aspx

    http://technet.microsoft.com/en-us/library/ms151795(v=sql.105).aspx

    []s,


    Armando Lacerda

    quarta-feira, 23 de janeiro de 2013 12:41
  • Olá Armando,

    Obrigado pela atenção,

    Vou está fazendo o teste via mídia externa.

    Att

    Clauber


    Atenciosamente, Clauber Júnio

    segunda-feira, 23 de dezembro de 2013 13:41