none
Bancos de dados locais e Banco de dados Remoto RRS feed

  • Pergunta

  • Tenho um Servidor SQL com todos os dados publicados para acesso remoto.

    Só que em alguns lugares terei que montar uma base off line pois não tem infraestrutura para utilizar o sistema.

    Como posso fazer sincronismo automatico de bancos off com on line(Principal) automaticamentente assim que tiver acesso a rede?


    Marcelo Gramari
    sábado, 29 de janeiro de 2011 01:56

Respostas

  • Olá Gramari,

    Desculpe o engano ... rs

    você pode usar o HTTP Merge Replication

    How HTTP Merge Replication Works
    HTTP replication uses IIS to transfer data between the publisher and the subscriber. Subscribers connect to a URL on your Web server using authentication parameters configured in the subscription. Messages sent between the subscribers are packaged as XML and can be encrypted using SSL for security purposes.
    When Web synchronization is used, the snapshot is delivered as a file attachment over HTTP. Because HTTP replication is a technology for merge replication, updates can be made to rows at both the publisher and the subscriber. However, because the publisher cannot know when the subscriber will be available, the merge agent runs on the subscriber and only pull subscriptions can be configured.

    Tradução com Google Translator
    Como
     HTTP replicação de mesclagem funciona
    Replicação HTTP usa o IIS para transferência de dados entre o editor eo assinante. Assinantes se conectar a uma URL no seu servidor Web utilizando os parâmetros de autenticação configurado na assinatura. As mensagens enviadas entre os assinantes são empacotadas como XML e podem ser criptografados usando SSL para fins desegurança.
    Quando a sincronização da Web é usado, o instantâneo é entregue como um anexo de arquivo por HTTP. Como a replicação HTTP é uma tecnologia de replicação de mesclagem, as atualizações podem ser feitas em linhas no publicador e assinante. No entanto, porque o editor não pode saber quando o assinante estará disponível, o Merge Agent é executado no assinante e  puxar as assinaturas podem ser configuradas.

    Se tiver alguma duvida me avise

    Useful Links
    Types of Replication Overview http://go.microsoft.com/fwlink/?LinkId=131466
    Configuring Web Synchronization
    http://go.microsoft.com/fwlink/?LinkID=127585 
    Web Synchronization for Merge Replication http://go.microsoft.com/fwlink/?LinkID=127586


    Fábio Oliveira Support Engieer | Microsoft Enterprise and Developer Support
    • Sugerido como Resposta Fábio Oliveira - SQL Team terça-feira, 1 de fevereiro de 2011 13:24
    • Marcado como Resposta Gramari terça-feira, 1 de fevereiro de 2011 13:43
    segunda-feira, 31 de janeiro de 2011 13:25

Todas as Respostas

  • Gramari,

    O que você define como base de dados offline?

    Por acaso seria um banco de dados de backup? Você disse que não tem estrutura do sistema, mas com certeza terá um servidor hospedando este banco!!!

    Talvez recursos como Log Shipping, Replicação e Espelhamento de Banco de Dados poria ser a solução.

    Você poderia explicar melhor o seu ambiente?


    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]
    sábado, 29 de janeiro de 2011 14:19
    Moderador
  • Ola Pedro. Obrigado pela atenção.

    O meu cenario é o seguinte tenho uma aplicação em asp.net com sql server.

    O problema é que existem eventos dentro da empresa que se faz necessário trabalhar off line, ou seja criar um servidor com outro sql e iis.

    O que eu preciso é criar um SQL que quando entrar on line ele atualize as informações com o servidor.

    A ideia que me foi informado é que hexiste uma forma de um banco de dados principal e  outros secundários. Conforme é efetivado a conexão ele atualiza as informações de ambos, mesmo que hajam informações alteradas em ambos.

    Bem espero ter sido claro.


    Marcelo Gramari
    sábado, 29 de janeiro de 2011 18:26
  • Gramari,

     

    Pelo que entendi, voce possui um servidor central, e de vez em quando é preciso criar novos servidores para se trabalhar localmente é isso? se for, qual a vantagem de voce atualizar seu servidor local? por que não trabalhar remoto? o que voce quer dizer como não tem infra para tal? ao invez de ficar atualizando informações para todos os lados, não seria melhor ter a informação centralizada para não haver chances de inconsistencia nas mesmas uma vez que essa é a principal vantagem de DB´s? 

    OBS: Existe na verdade é sem "H".


    ---------------------------------------------- Para dicas SQL Server e mais -> www.onlywhatmatters.wordpress.com
    segunda-feira, 31 de janeiro de 2011 10:27
    Moderador
  • Olá Genari,

    Concordo com o Caputofa.

    Você poderia escolher uma forma de replicação tipo Merge e somente iniciar/criar está replicação quando você estiver nestes eventos, entretanto você vai ter uma mão de obra um tanto considerável que vale mais apena conectar sua aplicação diretamente na web e utilizar uma conexão web nestes eventos.

    Abraços, 


    Fábio Oliveira Support Engieer | Microsoft Enterprise and Developer Support
    segunda-feira, 31 de janeiro de 2011 11:54
  • Fabio... é Gramari.rsssss..

    Bem para ser mais claro, eu tenho o servidor e disponibilizo os acessos externos sem problemas, o quadro em questão é que preciso realizar eventos pela empresas em diversas localidades, como se fossem pontos de vendas. Esses locais quase nunca tem infraestrutura para acesso Web, por isso preciso criar servidores para esses eventos em questão.

    A minha aplicação local ja esta pronta no servidor da empresa, agora só me falta criar subservidores para essas ações.

     

    Obrigado pela ajuda.


    Marcelo Gramari
    segunda-feira, 31 de janeiro de 2011 12:33
  • Olá Gramari,

    Desculpe o engano ... rs

    você pode usar o HTTP Merge Replication

    How HTTP Merge Replication Works
    HTTP replication uses IIS to transfer data between the publisher and the subscriber. Subscribers connect to a URL on your Web server using authentication parameters configured in the subscription. Messages sent between the subscribers are packaged as XML and can be encrypted using SSL for security purposes.
    When Web synchronization is used, the snapshot is delivered as a file attachment over HTTP. Because HTTP replication is a technology for merge replication, updates can be made to rows at both the publisher and the subscriber. However, because the publisher cannot know when the subscriber will be available, the merge agent runs on the subscriber and only pull subscriptions can be configured.

    Tradução com Google Translator
    Como
     HTTP replicação de mesclagem funciona
    Replicação HTTP usa o IIS para transferência de dados entre o editor eo assinante. Assinantes se conectar a uma URL no seu servidor Web utilizando os parâmetros de autenticação configurado na assinatura. As mensagens enviadas entre os assinantes são empacotadas como XML e podem ser criptografados usando SSL para fins desegurança.
    Quando a sincronização da Web é usado, o instantâneo é entregue como um anexo de arquivo por HTTP. Como a replicação HTTP é uma tecnologia de replicação de mesclagem, as atualizações podem ser feitas em linhas no publicador e assinante. No entanto, porque o editor não pode saber quando o assinante estará disponível, o Merge Agent é executado no assinante e  puxar as assinaturas podem ser configuradas.

    Se tiver alguma duvida me avise

    Useful Links
    Types of Replication Overview http://go.microsoft.com/fwlink/?LinkId=131466
    Configuring Web Synchronization
    http://go.microsoft.com/fwlink/?LinkID=127585 
    Web Synchronization for Merge Replication http://go.microsoft.com/fwlink/?LinkID=127586


    Fábio Oliveira Support Engieer | Microsoft Enterprise and Developer Support
    • Sugerido como Resposta Fábio Oliveira - SQL Team terça-feira, 1 de fevereiro de 2011 13:24
    • Marcado como Resposta Gramari terça-feira, 1 de fevereiro de 2011 13:43
    segunda-feira, 31 de janeiro de 2011 13:25
  • Gramari,

    Então se estes pontos não possuem infraestrutura de rede, acredito que este processo de sincronização poderia ser realizado através de um backup/restore.


    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]
    terça-feira, 1 de fevereiro de 2011 13:21
    Moderador
  • Ola Junior, obrigado pela disponibilização, mas com relação ao backup restore, você acaba perdendo os dados atualizados em uma das bases, e isso é que não pode acontecer. Preciso de integridade em ambas as partes e a cincronização atualize códigos identity.
    Marcelo Gramari
    terça-feira, 1 de fevereiro de 2011 13:28
  • Ola Fabio.

    Desculpe a demora, estava analisando os links.

    É exatamente isso que eu preciso fazer, dentro dos 3 conceitos que temos de replicação de dados, terei que analizar o melhor senário.

    Se tiver mais material para fornecer a respeito, agradeço muito, mas ja vou dar o caso como rspondido.

    Marcelo Gramari

    marcelogramari@hotmail.com


    Marcelo Gramari
    terça-feira, 1 de fevereiro de 2011 13:43
  • Olá Gramari,

    Acredito que como você irá possuir um cenário onde um dos bancos ficará "Offline" a escolha do HTTP Merge Replication é a melhor escolha pois assim que você conseguir colocar este banco que estava "offline" em um local com comunicação com seu banco principal você poderá efetuar a replicação dos dados entre estes bancos.

    Só efetue alguns testes <muitos testes =)> para verificar como você vai tratar os conflitos

    Todo material que você precisa estão nos links que compartilhei com você no post anterior

    Abraços e boa sorte!!!


    Fábio Oliveira Support Engieer | Microsoft Enterprise and Developer Support
    terça-feira, 1 de fevereiro de 2011 13:57