sp_copysubscription (Transact-SQL)

Observação importanteImportante

O recurso de assinaturas anexáveis está preterido e será removido em uma versão futura. Esse recurso não deveria ser usado em novo trabalho de desenvolvimento. Para publicações de mesclagem que são particionadas usando filtros com parâmetros, recomendamos o uso de novos recursos de instantâneos particionados, que simplificam a inicialização de um grande número de assinaturas. Para obter mais informações, consulte Instantâneos para publicações de mesclagem com filtros com parâmetros. Para publicações que não são particionadas, você pode inicializar uma assinatura com um backup. Para obter mais informações, consulte Inicializando uma assinatura de mesclagem sem instantâneo e Inicializando uma assinatura transacional sem um instantâneo.

Copia um banco de dados de assinatura que tem assinatura pull, mas nenhuma assinatura push. Somente bancos de dados de arquivo único podem ser copiados. Esse procedimento armazenado é executado no Assinante, no banco de dados de assinatura.

Ícone de vínculo de tópicoConvenções de sintaxe Transact-SQL

Sintaxe

sp_copysubscription [ @filename = ] 'file_name'
    [ , [ @temp_dir = ] 'temp_dir' ]
    [ , [ @overwrite_existing_file = ] overwrite_existing_file]

Argumentos

  • [ @filename =] 'file_name'
    É a cadeia de caracteres que especifica o caminho completo, incluindo nome do arquivo, no qual uma cópia do arquivo de dados (.mdf) é salva. file name é nvarchar(260), sem padrão.

  • [ @temp_dir=] 'temp_dir'
    É o nome do diretório que contém os arquivos temporários. temp_dir é nvarchar (260), com um padrão NULL. Se for NULL, o diretório de dados padrão do Microsoft SQL Server será usado. O diretório deve ter bastante espaço suficiente para conter um arquivo do tamanho de todos os arquivos de banco de dados de assinante combinados.

  • [ @overwrite_existing_file=] 'overwrite_existing_file'
    É um sinalizador booleano opcional que especifica se o arquivo existente do mesmo nome deve ou não ser sobrescrito em @filename. overwrite_existing_file é bit, com um padrão 0. Se for 1, ele substituirá o arquivo especificado por @ filename, se existir. Se for 0, o procedimento armazenado falhará e o arquivo não será substituído, se existir.

Valores de código de retorno

0 (êxito) ou 1 (falha)

Comentários

sp_copysubscription é usado em todo tipo de replicação para copiar um banco de dados de assinatura para um arquivo como uma alternativa de aplicação de instantâneo no Assinante. O banco de dados deve ser configurado para oferecer suporte somente a assinaturas pull. Usuários com permissões apropriadas podem fazer cópias do banco de dados de assinatura e enviar por email, copiar ou transportar o arquivo de assinatura (.msf) para outro Assinante, onde poderá ser anexado a uma assinatura.

O tamanho do banco de dados de assinatura copiado deve ser menor de 2 gigabytes (GB).

sp_copysubscription só tem suporte para bancos de dados com assinaturas de cliente e não pode ser executado quando o banco de dados tem assinaturas de servidor.

Permissões

Somente membros da função de servidor fixa sysadmin podem executar sp_copysubscription.