Você está offline; aguardando reconexão

Como remover manualmente uma replicação no SQL Server 2000 ou no SQL Server 2005

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 324401
Sumário
Este artigo descreve como remover uma réplica de um computador com o Microsoft SQL Server 2000 ou Microsoft SQL Server 2005. Para remover uma replicação, tem de largar as subscrições, as publicações e o distribuidor está configurado para a replicação. Pode remover a replicação através da execução de script Transact-SQL gerado pelo SQL Server Enterprise Manager ou SQL Server Management Studio. No entanto, se não é possível gerar o Transact-SQL para remover a replicação de script, pode remover manualmente a replicação utilizando procedimentos armazenado de sistema e outras instruções de Transact-SQL. Este artigo contém informações sobre procedimentos armazenado do sistema que pode ser utilizado neste processo.

Nota Para obter informações adicionais sobre o sistema procedimentos armazenados que são mencionados neste artigo, consulte SQL Server Books Online.

back to the top

Remover manualmente uma replicação

Pode remover manualmente uma replicação utilizando procedimentos armazenado de sistema e outras instruções de Transact-SQL. Para remover completamente uma replicação, siga estes passos:
  1. Eliminar todas as subscrições estão configuradas para a replicação.
  2. Eliminar todas as publicações que estão configuradas para a replicação.
  3. Largue o distribuidor está configurado para a replicação.
Nota Procedimentos armazenado do sistema para cada tipo de replicação são listados posteriormente neste artigo. Utilize procedimentos armazenados apropriados, dependendo do tipo de replicação que pretende remover.

back to the top

Largar as subscrições

Para cancelar as subscrições de uma instância do SQL Server, pode utilizar os procedimentos armazenados e os parâmetros adequados:
  • sp_dropsubscription : pode utilizar o procedimento armazenado do sistema de sp_dropsubscription para largar subscrições para um artigo específico, publicação ou conjunto de subscrições no Publisher. Tem de executar o procedimento armazenado no servidor Publisher na base de dados de publicação.
  • sp_droppullsubscription : pode utilizar o procedimento armazenado do sistema de sp_droppullsubscription para largar uma subscrição na base de dados actual do subscritor. Tem de executar o procedimento armazenado no subscritor na base de dados de subscrição de solicitação.
  • sp_dropmergesubscription : pode utilizar o procedimento armazenado do sistema de sp_dropmergesubscription para largar uma subscrição para uma publicação de intercalação e o agente de impressão em série que está associado a publicação de impressão em série. Tem de executar o procedimento armazenado no servidor Publisher na base de dados de publicação.
  • sp_dropmergepullsubscription : pode utilizar o procedimento armazenado do sistema de sp_dropmergepullsubscription para largar uma subscrição de solicitação de impressão em série. Tem de executar o procedimento armazenado no subscritor na base de dados de subscrição de solicitação.

Largar instantâneo subscrições

Para largar uma subscrição de emissão para todos os artigos para uma publicação de instantâneo, execute o seguinte script no Editor:
USE <Publication database name>GOEXEC sp_dropsubscription @publication = N'<Publication name>', @article = N'all', @subscriber = N'all', @destination_db = N'all'
para largar uma subscrição de instantâneo de solicitação para todos os artigos para uma publicação de instantâneo, siga estes passos:
  1. Execute o seguinte script SQLb no subscritor:
    USE <Subscription database name>GOEXEC sp_droppullsubscription @publisher = N'<Publisher server name>', @publisher_db = N'<Publication database name>', @publication = N'<Publication name>'
  2. Execute o seguinte script no Publisher:
    USE <Publication database name>GOEXEC sp_dropsubscription @publication=N'<Publication name>', @subscriber = N'<Subscriber server name>', @article = N'all', @destination_db = N'all'

Largar uma subscrição transaccional

Para largar uma subscrição de emissão para todos os artigos para uma publicação transaccional, execute o seguinte script no Publisher:
USE <Publication database name>GOEXEC sp_dropsubscription @publication = N'<Publication name>', @article = N'all', @subscriber = N'all', @destination_db = N'all'
para largar uma subscrição de solicitação para todos os artigos para uma publicação transaccional, siga estes passos:
  1. Execute o seguinte script no subscritor:
    USE <Subscription database name>GOEXEC sp_droppullsubscription @publisher = N'<Publisher server name>', @publisher_db = N'<Publisher database name>', @publication = N'<Publication name>'
  2. Execute o seguinte script no Publisher:
    USE <Publication database name>GOEXEC sp_dropsubscription @publication =N'<Publication name>', @subscriber = N'<Subscriber server name>', @article = N'all', @destination_db = N'<Destination database name>'

Largar uma subscrição de impressão em série

Para largar uma subscrição de emissão, execute o seguinte script no Publisher:
USE <Publication database name>GOEXEC sp_dropmergesubscription @publication = N'<Publication name>', @subscriber = N'<Publisher server name>', @subscriber_db = N'<Subscription database name>', @subscription_type = N'push'
para largar uma subscrição de solicitação, siga estes passos:
  1. Execute o seguinte script no subscritor:
    USE <Subscription database name>GOEXEC sp_dropmergepullsubscription @publication = N'<Publication name>', @publisher = N'<Publisher server name>', @publisher_db = N'<Publisher database name>'
  2. Execute o seguinte script no Publisher:
    USE <Publication database name>GOEXEC sp_dropmergesubscription @subscription_type = N'pull', @publication = N'<Publication name>', @subscriber = N'<Subscriber server name>', @subscriber_db = N'<Subscription database name>'
back to the top

Largar as publicações

Depois de remover todas as subscrições subscrever uma publicação, pode remover a publicação. Depois de remover as publicações na base de dados de publicação, tem de definir a opção de base de dados de replicação para a base de dados de publicação como false. Para remover uma publicação, pode utilizar os seguintes procedimentos armazenado do sistema:
  • sp_droppublication : pode utilizar o procedimento armazenado do sistema de sp_droppublication para uma publicação e os artigos que estão associados com a publicação. Tem de executar o procedimento armazenado no Editor na base de dados de publicação.
  • sp_dropmergepublication : pode utilizar o procedimento armazenado do sistema de sp_dropmergepublication para uma publicação de intercalação e o agente de snapshot estiver associado com a publicação de impressão em série. Os artigos que estão associados com a publicação também são ignorados. Tem de executar o procedimento armazenado no Editor na base de dados de publicação.
  • sp_replicationdboption : pode utilizar o procedimento armazenado do sistema de sp_replicationdboption para definir uma opção da base de dados de replicação para a base de dados actual. Tem de executar o procedimento armazenado no servidor do Publisher.
Para largar uma publicação de instantâneo, execute o seguinte script no Publisher:
USE <Publication database name>GOEXEC sp_droppublication @publication = N'<Publication name>'USE masterGOexec sp_replicationdboption @dbname = N'<Publication database name>', @optname = N'publish', @value = N'false'
para largar uma publicação transaccional, execute o seguinte script no Publisher:
USE <Publication database name>GOEXEC sp_droppublication @publication = N'<Publication name>'USE masterGOEXEC sp_replicationdboption @dbname = N'<Publication database name>', @optname = N'publish', @value = N'false'
para largar uma publicação de impressão em série, execute o seguinte script no Editor:
USE <Publication database name>GOEXEC sp_dropmergepublication @publication = N'<Publication name>'USE masterGOEXEC sp_replicationdboption @dbname = N'<Publication database name>', @optname = N'merge publish', @value = N'false'
back to the top

Largar o distribuidor

Depois de largar todas as subscrições e as publicações, é possível colocar o distribuidor relevante. No entanto, antes de largar o distribuidor, tem de largar a designação de subscritor do Publisher. Para o fazer, utilize os procedimentos armazenados:
  • sp_dropsubscriber : pode utilizar o procedimento armazenado do sistema de sp_dropsubscriber para largar a designação do subscritor de um servidor registado. O procedimento armazenado remove a entrada de registo para o subscritor. O procedimento armazenado é executado no Publisher na base de dados de publicação.
  • sp_dropdistributor : pode utilizar o procedimento armazenado do sistema de sp_dropdistributor para remover o distribuidor. O procedimento armazenado é executado no distribuidor.
Para remover a designação de subscritor do Publisher, execute o script seguinte no Editor:
USE masterGOEXEC sp_dropsubscriber @subscriber = N'<Subscriber server name>', @reserved = N'drop_subscriptions'
para remover o distribuidor, execute o seguinte script o distribuidor:
USE masterGOEXEC sp_dropdistributor @no_checks = 1
back to the top

Utilizar procedimentos armazenados

Também pode utilizar os procedimentos armazenados quando remove a replicação:
  • sp_removedbreplication : pode utilizar o procedimento armazenado do sistema de sp_removedbreplication para remover todos os objectos de replicação da base de dados sem actualizar os dados com o distribuidor. Tem de executar o procedimento armazenado no Editor na base de dados de publicação ou no subscritor na base de dados de subscrição. Segue-se a sintaxe para este procedimento armazenado:
    sp_removedbreplication '<Database name>'
  • sp_droparticle : pode utilizar o procedimento armazenado do sistema de sp_droparticle para largar um artigo a partir de uma publicação de instantâneo ou de publicação transaccional. Não pode remover um artigo se ainda existirem um ou mais subscrições para o artigo publicado. Tem de executar o procedimento armazenado no Editor na base de dados de publicação. Segue-se a sintaxe para este procedimento armazenado:
    sp_droparticle @publication = N'<Publication name>', @article = N'<Article name>', @force_invalidate_snapshot = 1
back to the top
Referências
Para mais informações, consulte os seguintes tópicos no SQL Server Books Online:
  • Como desactivar a publicação e distribuição Transact-SQL)
  • Como eliminar publicações e artigos Transact-SQL)
  • Como eliminar uma subscrição de emissão (Transact-SQL)
  • Como eliminar uma subscrição de solicitação (Transact-SQL)
  • Como eliminar uma subscrição anónima (Transact-SQL)
  • Como eliminar artigos (Enterprise Manager) e publicações
  • Como eliminar uma subscrição de emissão (Enterprise Manager)
  • Como eliminar uma solicitação ou subscrição anónima (Enterprise Manager)
back to the top

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 324401 - Última Revisão: 11/23/2005 17:08:10 - Revisão: 3.3

Microsoft SQL Server 2000 Standard Edition, Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL 2005 Server Enterprise, Microsoft SQL 2005 Server Workgroup

  • kbmt kbhowtomaster kbreplication kbstoredproc KB324401 KbMtpt
Comentários