Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a:SQL Server
Azure SQL Database
Base de dados SQL no Microsoft Fabric
Anexa uma base de dados de subscrição existente a qualquer assinante. Este procedimento armazenado é executado no novo Assinante na master base de dados.
Importante
Esta funcionalidade está desatualizada e será removida numa versão futura. Esta funcionalidade não deve ser usada em novos trabalhos de desenvolvimento. 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
Sintaxe
sp_attachsubscription
[ @dbname = ] N'dbname'
, [ @filename = ] N'filename'
[ , [ @subscriber_security_mode = ] subscriber_security_mode ]
[ , [ @subscriber_login = ] N'subscriber_login' ]
[ , [ @subscriber_password = ] N'subscriber_password' ]
[ , [ @distributor_security_mode = ] distributor_security_mode ]
[ , [ @distributor_login = ] N'distributor_login' ]
[ , [ @distributor_password = ] N'distributor_password' ]
[ , [ @publisher_security_mode = ] publisher_security_mode ]
[ , [ @publisher_login = ] N'publisher_login' ]
[ , [ @publisher_password = ] N'publisher_password' ]
[ , [ @job_login = ] N'job_login' ]
[ , [ @job_password = ] N'job_password' ]
[ , [ @db_master_key_password = ] N'db_master_key_password' ]
[ ; ]
Arguments
[ @dbname = ] N'dbname'
Especifica o nome da base de dados de subscrição de destino. @dbname é sysname, sem padrão.
[ @filename = ] N'nome do ficheiro'
O nome e a localização física do ficheiro de dados primário (.mdf).
@filename é nvarchar(260), sem padrão.
[ @subscriber_security_mode = ] subscriber_security_mode
O modo de segurança do Assinante a usar ao ligar-se a um Assinante durante a sincronização.
@subscriber_security_mode é int, com um padrão de NULL.
Observação
Deve ser utilizada a Autenticação do Windows. Se @subscriber_security_mode não 1 for (Autenticação do Windows), recebe um erro.
[ @subscriber_login = ] N'subscriber_login'
O nome de login do Assinante a usar ao ligar a um Assinante durante a sincronização.
@subscriber_login é sysname, com um padrão de NULL.
Observação
Este parâmetro está obsoleto e é mantido para compatibilidade retroativa dos scripts. Se @subscriber_security_mode não 1 for e @subscriber_login for especificado, recebe um erro.
[ @subscriber_password = ] N'subscriber_password'
A palavra-passe do Subscritor.
@subscriber_password é sysname, com um padrão de NULL.
Observação
Este parâmetro está obsoleto e é mantido para compatibilidade retroativa dos scripts. Se @subscriber_security_mode não 1 for e @subscriber_password for especificado, recebe um erro.
[ @distributor_security_mode = ] distributor_security_mode
O modo de segurança a usar ao ligar-se a um distribuidor ao sincronizar.
@distributor_security_mode é int, com um padrão de 1.
-
0especifica autenticação SQL Server -
1especifica autenticação no Windows
Quando possível, use a autenticação do Windows.
[ @distributor_login = ] N'distributor_login'
O login do Distribuidor para usar ao ligar a um Distribuidor ao sincronizar.
@distributor_login é sysname, com um padrão de NULL.
@distributor_login é necessário se @distributor_security_mode estiver definido para 0.
[ @distributor_password = ] N'distributor_password'
A palavra-passe do Distribuidor.
@distributor_password é sysname, com o padrão de NULL.
@distributor_password é necessário se @distributor_security_mode estiver definido como 0. O valor de @distributor_password deve ser inferior a 120 caracteres Unicode.
Importante
Não utilize uma palavra-passe em branco. Use uma senha forte. Quando possível, solicite que os usuários insiram credenciais de segurança em tempo de execução. Se você precisar armazenar credenciais em um arquivo de script, deverá proteger o arquivo para impedir o acesso não autorizado.
[ @publisher_security_mode = ] publisher_security_mode
O modo de segurança a usar ao ligar-se a um Publisher durante a sincronização.
@publisher_security_mode é int, com um padrão de 1.
- Se
0, especifica a autenticação do SQL Server. - Se
1, especifica a autenticação do Windows. Quando possível, use a autenticação do Windows.
[ @publisher_login = ] N'publisher_login'
O login para usar ao ligar a um Publisher ao sincronizar.
@publisher_login é sysname, com um padrão de NULL.
[ @publisher_password = ] N'publisher_password'
A palavra-passe usada ao ligar-se ao Publisher.
@publisher_password é sysname, com um padrão de NULL. O valor de @publisher_password deve ser inferior a 120 caracteres Unicode.
Importante
Não utilize uma palavra-passe em branco. Use uma senha forte. Quando possível, solicite que os usuários insiram credenciais de segurança em tempo de execução. Se você precisar armazenar credenciais em um arquivo de script, deverá proteger o arquivo para impedir o acesso não autorizado.
[ @job_login = ] N'job_login'
O login da conta Windows com a qual o agente corre. @job_login é nvarchar(257), sem padrão. Esta conta do Windows é sempre usada para ligações de agentes ao Distribuidor.
[ @job_password = ] N'job_password'
A palavra-passe da conta Windows com a qual o agente corre.
@job_password é sysname, com um padrão de NULL. O valor de job_password deve ser inferior a 120 caracteres Unicode.
Importante
Não utilize uma palavra-passe em branco. Use uma senha forte. Quando possível, solicite que os usuários insiram credenciais de segurança em tempo de execução. Se você precisar armazenar credenciais em um arquivo de script, deverá proteger o arquivo para impedir o acesso não autorizado.
[ @db_master_key_password = ] N'db_master_key_password'
A palavra-passe de uma chave mestra de base de dados (DMK) definida pelo utilizador.
@db_master_key_password é nvarchar(524), com um padrão de NULL. Se @db_master_key_password não for especificado, um DMK existente é descartado e recriado.
Importante
Não utilize uma palavra-passe em branco. Use uma senha forte. Quando possível, solicite que os usuários insiram credenciais de segurança em tempo de execução. Se você precisar armazenar credenciais em um arquivo de script, deverá proteger o arquivo para impedir o acesso não autorizado.
Valores de código de retorno
0 (sucesso) ou 1 (fracasso).
Observações
sp_attachsubscription é usado na replicação de snapshot, replicação transacional e replicação de mesclagem.
Não pode ser atribuída uma subscrição à publicação se o período de retenção tiver expirado. Se for especificada uma subscrição com um período de retenção decorrido, ocorre um erro quando a subscrição é anexada ou sincronizada primeiro. Publicações com um período de retenção de 0 (nunca expira) são ignoradas.
Permissions
Somente membros da função de servidor fixa sysadmin podem executar sp_attachsubscriptiono .