Compartilhar via


Como inicializar manualmente uma assinatura (Programação Transact-SQL de replicação)

Embora o instantâneo inicial seja normalmente usado para inicializar uma assinatura, as assinaturas para publicações podem ser inicializadas sem o uso de um instantâneo, desde que o esquema e os dados iniciais já estejam presentes no assinante.

Observação importanteImportante

Por exemplo, se houver atividade em um banco de dados publicado usando replicação tradicional entre a hora que os dados e o esquema são copiados no Assinante e na hora em que a assinatura é inicializada manualmente, pode ser que as alterações resultantes dessa atividade não sejam replicadas no Assinante.

As assinaturas podem ser inicializadas manualmente usando procedimentos de replicação armazenados.

Para inicializar manualmente uma assinatura pull para uma publicação transacional

  1. Certifique-se que o esquema e dados existam no banco de dados de assinatura. Para obter mais informações, consulte Inicializando uma assinatura transacional sem um instantâneo.

  2. No Publicador do banco de dados da publicação, execute sp_addsubscription. Especifique @publication, @subscriber, o nome do banco de dados no Assinante que contém os dados publicados para @destination_db, o valor pull para @subscription_type, e o valor replication support only para @sync_type. Para obter mais informações, consulte Como criar uma assinatura push (Programação Transact-SQL de replicação).

  3. No Assinante, execute sp_addpullsubscription. Para atualizar assinaturas, consulte Como criar uma assinatura atualizável em uma publicação transacional (Programação Transact-SQL de replicação).

  4. No Assinante, execute sp_addpullsubscription_agent. Para obter mais informações, consulte Como criar uma assinatura push (Programação Transact-SQL de replicação).

  5. Inicie o Distribution Agent para transferir objetos de replicação e baixe as alterações mais recentes do Publicador. Para obter mais informações, consulte Como sincronizar uma assinatura pull (Programação de replicação).

Para inicializar manualmente uma assinatura push para uma publicação transacional

  1. Certifique-se que o esquema e dados existam no banco de dados de assinatura. Para obter mais informações, consulte Inicializando uma assinatura transacional sem um instantâneo.

  2. No Publicador do banco de dados da publicação, execute sp_addsubscription. Especifique o nome do banco de dados no Assinante que contém os dados publicados para @destination_db, o valor push para @subscription_type, e o valor replication support only para @sync_type. Para atualizar assinaturas, consulte Como criar uma assinatura atualizável em uma publicação transacional (Programação Transact-SQL de replicação).

  3. No Publicador, no banco de dados da publicação, execute sp_addpushsubscription_agent. Para obter mais informações, consulte Como criar uma assinatura push (Programação Transact-SQL de replicação).

  4. Inicie o Distribution Agent para transferir objetos de replicação e baixe as alterações mais recentes do Publicador. Para obter mais informações, consulte Como sincronizar uma assinatura push (Programação de replicação).

Para inicializar manualmente uma assinatura pull para uma publicação de mesclagem

  1. Certifique-se que o esquema e dados existam no banco de dados de assinatura. Isso pode ser feito restaurando um backup do banco de dados de publicação no Assinante. Para obter mais informações, consulte Inicializando uma assinatura de mesclagem sem instantâneo.

  2. No Publicador, execute sp_addmergesubscription. Especifique @publication, @subscriber, @subscriber_db, e o valor pullpara @subscription_type. Isso registra a assinatura pull.

  3. No Assinante, no banco de dados que contém os dados publicados, execute sp_addmergepullsubscription. Especifique o valor none para @sync_type.

  4. No Assinante, execute sp_addmergepullsubscription_agent. Para obter mais informações, consulte Como criar uma assinatura push (Programação Transact-SQL de replicação).

  5. Inicie o Merge Agent para transferir objetos de replicação e baixe as alterações mais recentes do Publicador. Para obter mais informações, consulte Como sincronizar uma assinatura pull (Programação de replicação).

Para inicializar manualmente uma assinatura push para uma publicação de mesclagem

  1. Certifique-se que o esquema e dados existam no banco de dados de assinatura. Isso pode ser feito restaurando um backup do banco de dados de publicação no Assinante. Para obter mais informações, consulte Inicializando uma assinatura de mesclagem sem instantâneo.

  2. No Publicador, no banco de dados da publicação, execute sp_addmergesubscription. Especifique o nome do banco de dado no Assinante que contém os dados publicados para @subscriber_db, o valor push para @subscription_type e o valor none para @sync_type.

  3. No Publicador, no banco de dados da publicação, execute sp_addmergepushsubscription_agent. Para obter mais informações, consulte Como criar uma assinatura push (Programação Transact-SQL de replicação).

  4. Inicie o Merge Agent para transferir objetos de replicação e baixe as alterações mais recentes do Publicador. Para obter mais informações, consulte Como sincronizar uma assinatura push (Programação de replicação).