Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a: SQL Server
Azure SQL Managed Instance
Copia uma base de dados de subscrições que puxa subscrições, mas não subscrições push. Apenas bases de dados de ficheiros individuais podem ser copiadas. Este procedimento armazenado é executado no Assinante na base de dados de subscrição.
Important
Esse recurso será removido em uma versão futura do SQL Server. Evite usar esse recurso em novos trabalhos de desenvolvimento e planeje modificar aplicativos que atualmente usam esse recurso. Para publicações de fusão particionadas usando filtros parametrizados, recomendamos o uso das novas funcionalidades dos snapshots particionados, que simplificam a inicialização de um grande número de subscrições. Para mais informações, consulte Criar um Snapshot para uma Publicação de Fusão com Filtros Parametrizados. Para publicações que não são particionadas, podes inicializar uma subscrição com um backup. Para obter mais informações, consulte Inicializar uma assinatura transacional sem um instantâneo.
Transact-SQL convenções de sintaxe
Syntax
sys.sp_copysubscription
[ @filename = ] N'filename'
[ , [ @temp_dir = ] N'temp_dir' ]
[ , [ @overwrite_existing_file = ] overwrite_existing_file ]
[ ; ]
Arguments
[ @filename = ] N'nome do ficheiro'
A cadeia que especifica o caminho completo, incluindo o nome do ficheiro, para o qual é guardada uma cópia do ficheiro de dados (.mdf).
@filename é nvarchar(260), sem padrão.
[ @temp_dir = ] N'temp_dir'
O nome do diretório que contém os ficheiros temporários.
@temp_dir é nvarchar(260), com o padrão de NULL. Se NULL, é utilizado o diretório de dados predefinido do SQL Server. O diretório deve ter espaço suficiente para armazenar um ficheiro do tamanho de todos os ficheiros da base de dados dos assinantes juntos.
[ @overwrite_existing_file = ] overwrite_existing_file
Uma flag booleana opcional que especifica se deve ou não sobrescrever um ficheiro existente com o mesmo nome especificado em @filename.
@overwrite_existing_fileé bit, com um padrão de 0.
- Se
1, sobreescreve o ficheiro especificado por @filename, se este existir. - Se
0, o procedimento armazenado falha se o ficheiro existir e o ficheiro não for sobrescrito.
Valores de código de retorno
0 (sucesso) ou 1 (fracasso).
Remarks
sp_copysubscription é usado em todos os tipos de replicação para copiar uma base de dados por subscrição para um ficheiro, como alternativa à aplicação de um snapshot no Assinante. A base de dados deve ser configurada para suportar apenas subscrições de pull. Os utilizadores com permissões adequadas podem fazer cópias da base de dados de subscrição e depois enviar por email, copiar ou transportar o ficheiro de subscrição (.msf) para outro Assinante, onde pode ser anexado como subscrição.
O tamanho da base de dados por subscrição a ser copiada deve ser inferior a 2 gigabytes (GB).
sp_copysubscription é suportado apenas para bases de dados com subscrições de cliente e não pode ser executado quando a base de dados tem subscrições de servidor.
Permissions
Somente membros da função de servidor fixa sysadmin podem executar sp_copysubscriptiono .