sp_copysubscription (Transact-SQL)

Aplica-se a:SQL ServerInstância Gerenciada de SQL do Azure

Importante

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 Snapshots for Merge Publications with Parameterized Filters. Para publicações que não são particionadas, é possível inicializar uma inscrição com um backup. Para obter mais informações, consulte Initialize a Transactional Subscription Without a Snapshot.

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.

Convenções de sintaxe de 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 o nome do arquivo, para o qual uma cópia do arquivo de dados (.mdf) é salva. o nome do arquivo é 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 de 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 booliano opcional que especifica se deve ou não substituir um arquivo existente com o mesmo nome especificado em @filename. overwrite_existing_fileé bit, com um padrão de 0. Se 1, ele substituirá o arquivo especificado por @filename, se ele existir. Se 0, o procedimento armazenado falhará se o arquivo existir e o arquivo não for substituído.

Valores do código de retorno

0 (êxito) ou 1 (falha)

Comentários

sp_copysubscription é usado em todos os tipos de replicação para copiar um banco de dados de assinatura para um arquivo como alternativa à aplicação de um 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.

Consulte Também

Locais da pasta de instantâneos alternativos
Procedimentos armazenados do sistema (Transact-SQL)