Ativar cópias de segurança coordenadas para replicação transacional

Aplica-se a: SQL Server

Ao ativar uma base de dados para Replicação Transacional, pode especificar que todas as transações devem ser copiadas antes de as entregar à base de dados de distribuição. Também pode ativar cópias de segurança coordenadas na base de dados de distribuição, para que o registo de transações da base de dados de publicação não seja truncado enquanto não for efetuada uma cópia de segurança das transações que foram propagadas para o Distribuidor. Para mais informações, consulte Estratégias para backup e restauração de snapshots e Replicação Transacional.

Note

Usar a opção de sincronização com backup na base de dados de distribuição não é compatível quando a base de dados do editor faz parte de um grupo de disponibilidade e pode levar ao seguinte erro: The process could not execute 'sp_repldone/sp_replcounters' on 'machinename\instance', Possible inconsistent state in the distribution database, Get help: http://help/MSSQL_REPL20011 (Source: MSSQLServer, Error number: 18846)

Para permitir cópias de segurança coordenadas de uma base de dados publicada com Replicação Transacional

  1. No Publicador, utilize a função SELECT DATABASEPROPERTYEX(DB_NAME(),'IsSyncWithBackup')DATABASEPROPERTYEX (Transact-SQL) para devolver o valor da propriedade IsSyncWithBackup da base de dados da publicação. Se a função devolver 1, backups coordenados já estão ativados para a base de dados publicada.

  2. Se a função no passo 1 devolver 0, execute sp_replicationdboption (Transact-SQL) no Publisher na base de dados de publicação. Especifica um valor de sincronização com backup para @optname, e verdade para @value.

    Note

    Se alterar a opção de sincronização com backup para false, o ponto de truncamento da base de dados de publicações será atualizado após a execução do Agente Leitor de Registos, ou após um intervalo se o Agente Leitor de Registos estiver a correr continuamente. O intervalo máximo é controlado pelo parâmetro agente –MessageInterval (que tem como padrão 30 segundos).

Para permitir backups coordenados para uma base de dados de distribuição

  1. No Distribuidor, use a função DATABASEPROPERTYEX (Transact-SQL) para devolver a propriedade IsSyncWithBackup da base de dados de distribuição. Se a função devolver 1, backups coordenados já estão ativados para a base de dados de distribuição.

  2. Se a função no passo 1 devolver 0, execute sp_replicationdboption (Transact-SQL) no Distribuidor na base de dados de distribuição. Especifique um valor de sincronização com backup para @optname e verdadeiro para @value.

Para desativar cópias de segurança coordenadas

  1. No Publicador da base de dados de publicação ou no Distribuidor da base de dados de distribuição, execute sp_replicationdboption (Transact-SQL). Especifique um valor de sincronização com backup para @optname e falso para @value.

Exemplos

A. Obter a propriedade IsSyncWithBackup da base de dados atual

Este exemplo devolve a IsSyncWithBackup propriedade para a base de dados atual:

SELECT DATABASEPROPERTYEX(DB_NAME(),'IsSyncWithBackup')`

B. Recuperar a IsSyncWithBackup propriedade para uma base de dados específica

Este exemplo devolve a IsSyncWithBackup propriedade para a base de dados NameOfDatabaseToCheck:

SELECT DATABASEPROPERTYEX('NameOfDatabaseToCheck','IsSyncWithBackup')`