Compartilhar via


Como administrar uma topologia ponto a ponto (Programação Transact-SQL de replicação)

A administração de uma topologia ponto a ponto é semelhante à administração de uma topologia de replicação de transação comum, porém, há algumas áreas com considerações especiais. A diferença principal na administração da topologia ponto a ponto é que algumas alterações exigem que o sistema seja confirmado. Confirmar um sistema envolve parar as atividades em tabelas publicadas em todos os nós, e assegurar que todos os nós tenham recebido todas as alterações de todos os demais nós. Para obter mais informações, consulte Como confirmar uma topologia de replicação (Programação Transact-SQL de replicação). Para obter mais informações sobre como adicionar um nó a uma topologia existente, consulte Como configurar a replicação transacional ponto a ponto (Programação Transact-SQL de replicação).

Para adicionar um artigo a uma configuração existente

  1. Confirme o sistema.

  2. Pare o Distribution Agent em cada nó na topologia. Para obter mais informações, consulte Conceitos dos executáveis do Replication Agent ou Como iniciar e parar um Replication Agent (SQL Server Management Studio).

  3. Execute a instrução CREATE TABLE para adicionar a nova tabela em cada nó na topologia.

  4. Copie manualmente os dados em massa da nova tabela em todos os nós usando a utilidade bcp.

  5. Execute sp_addarticle para criar o novo artigo em cada nó na topologia. Para obter mais informações, consulte Como definir um artigo (Programação Transact-SQL de replicação).

    ObservaçãoObservação

    Depois que sp_addarticle é executado, a replicação adiciona automaticamente o artigo às assinaturas na topologia.

  6. Reinicialize os Distribution Agents em cada nó na topologia.

Para efetuar alterações de esquema em um banco de dados de publicação

  1. Confirme o sistema.

  2. Execute as instruções de linguagem de definição de dados (DDL) para modificar o esquema das tabelas publicadas. Para obter mais informações sobre as alterações de esquema que têm suporte, consulte Fazendo alterações de esquema em bancos de dados de publicação.

  3. Antes de retomar a atividade nas tabelas publicadas, confirme o sistema novamente. Isto garante que as alterações de esquema foram recebidas por todos os nós antes que novas alterações de dados sejam replicadas.

Exemplo

O exemplo a seguir demonstra como adicionar um novo artigo de tabela em uma topologia de replicação ponto a ponto existente que tenha dois nós.

-- Create the new table at both nodes.
CREATE TABLE AdventureWorks.dbo.ProductTest (column1 int, Column2 int);
CREATE TABLE AdventureWorksReplica.dbo.ProductTest (column1 int, Column2 int);
GO
REM Bulk insert data into both the publication and subscription databases.
REM The BCP format depends on the snapshot format (native or character).
REM Execute at the command prompt.

bcp AdventureWorks..ProductTest in NewTable.bcp �T �SMYPUBLISHER n/c
bcp AdventureWorksReplica..ProductTest in NewTable.bcp �T �SMYPUBLISHER n/c
--- Add the article to the publication.
DECLARE @publication AS sysname;
DECLARE @newtable AS sysname;
SET @publication = N'AdvWorksProductTran';
SET @newtable = N'ProductTest';

USE AdventureWorks

EXEC sp_addarticle 
  @publication = @publication,
  @article = @newtable,
  @source_table = @newtable,
  @destination_table = @newtable,
  @force_invalidate_snapshot = 0;
GO