none
Retirar Replicação de banco atachado RRS feed

  • Pergunta

  • Caros,

       Migrei recentemente toda minha estrutura de banco de dados para SQL 2008. Para fazer isso, eu simplesmente instalei a instância do SQL e fiz um attach database dos bancos que iria usar (estavam no SQL 2000 e SQL 2005).
       Acontece que na instancia do 2005 eu tinha replicação de algumas tabelas para o SQL 2000, ao attachar este banco no 2008 as configurações de replicação vieram junto. Como não consegui excluir a replicação pela interface gráfica, apaguei a replicação manualmente de alguns tabelas do banco (sysarticles, syspublications, etc) e limpei todas as tabelas.
      Acontece que nas tabelas replicadas ainda esta marcado a propriedade de 'replicated' = true.
      Como devo fazer para tirar essa replicação por completo.

      Usei a sp : sp_MSunmarkreplinfo @NOME_DA_TABELA que a principio desmarca a replicação, mas não deu certo (apesar da execução ter acontecido normalmente).

    MTI Tecnologia
    segunda-feira, 14 de setembro de 2009 19:09

Respostas

  • Boa Noite,

    A partir do momento que tabelas de sistema foram alteradas diretamente, não há mais como garantir a integridade do seu banco em relação à replicação. Sempre costumo dizer que é melhor pesquisar o máximo possível antes de procurar por soluções não documentadas. Você poderia remover o uso de replicação do seu banco com a stored procedure sp_removedbreplication com segurança ou com a sp_replicationdboption

    [ ]s,

    Gustavo Maia Aguiar
    http://gustavomaiaaguiar.spaces.live.com

    A armadilha do Backup Diferencial – O que fazer para evitá-la ?
    http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!719.entry
    Classifique as respostas. O seu feedback é imprescindível
    • Sugerido como Resposta Gustavo Maia Aguiar segunda-feira, 14 de setembro de 2009 22:44
    • Marcado como Resposta Richard Juhasz terça-feira, 2 de outubro de 2012 16:55
    segunda-feira, 14 de setembro de 2009 22:44
  • Maurício,

    A pouco tempo atrás tive um problema parecido com o seu, um colega realizou a migração de uma base replicada e perdemos completamente a integridade do ambiente, foi necessário reconstruir boa parte da base de dados, importando e exportando tables.

    No final utilizamos a system stored procedure sp_removedbreplication para eliminar as informações e entradas utilizadas pelo SQL Server para a replicação, e excluir em algumas tables as colunas MS_Repl utilizada pelo SQL Server para controlar o ID de replicação.
    Pedro Antonio Galvão Junior - MVP - Windows Server System - SQL Server/Coordenador de Projetos/DBA
    • Marcado como Resposta Richard Juhasz terça-feira, 2 de outubro de 2012 16:55
    segunda-feira, 14 de setembro de 2009 23:53
    Moderador

Todas as Respostas

  • Boa Noite,

    A partir do momento que tabelas de sistema foram alteradas diretamente, não há mais como garantir a integridade do seu banco em relação à replicação. Sempre costumo dizer que é melhor pesquisar o máximo possível antes de procurar por soluções não documentadas. Você poderia remover o uso de replicação do seu banco com a stored procedure sp_removedbreplication com segurança ou com a sp_replicationdboption

    [ ]s,

    Gustavo Maia Aguiar
    http://gustavomaiaaguiar.spaces.live.com

    A armadilha do Backup Diferencial – O que fazer para evitá-la ?
    http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!719.entry
    Classifique as respostas. O seu feedback é imprescindível
    • Sugerido como Resposta Gustavo Maia Aguiar segunda-feira, 14 de setembro de 2009 22:44
    • Marcado como Resposta Richard Juhasz terça-feira, 2 de outubro de 2012 16:55
    segunda-feira, 14 de setembro de 2009 22:44
  • Maurício,

    A pouco tempo atrás tive um problema parecido com o seu, um colega realizou a migração de uma base replicada e perdemos completamente a integridade do ambiente, foi necessário reconstruir boa parte da base de dados, importando e exportando tables.

    No final utilizamos a system stored procedure sp_removedbreplication para eliminar as informações e entradas utilizadas pelo SQL Server para a replicação, e excluir em algumas tables as colunas MS_Repl utilizada pelo SQL Server para controlar o ID de replicação.
    Pedro Antonio Galvão Junior - MVP - Windows Server System - SQL Server/Coordenador de Projetos/DBA
    • Marcado como Resposta Richard Juhasz terça-feira, 2 de outubro de 2012 16:55
    segunda-feira, 14 de setembro de 2009 23:53
    Moderador