Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se:SQL Server
Configura as informações primárias, adiciona links de monitor local e remoto e cria trabalhos de cópia e restauração no servidor secundário para o banco de dados primário especificado.
Convenções de sintaxe de Transact-SQL
Sintaxe
sys.sp_add_log_shipping_secondary_primary
[ @primary_server = ] N'primary_server'
, [ @primary_database = ] N'primary_database'
, [ @backup_source_directory = ] N'backup_source_directory'
, [ @backup_destination_directory = ] N'backup_destination_directory'
[ , [ @copy_job_name = ] N'copy_job_name' ]
[ , [ @restore_job_name = ] N'restore_job_name' ]
[ , [ @file_retention_period = ] file_retention_period ]
[ , [ @monitor_server = ] N'monitor_server' ]
[ , [ @monitor_server_security_mode = ] monitor_server_security_mode ]
[ , [ @monitor_server_login = ] N'monitor_server_login' ]
[ , [ @monitor_server_password = ] N'monitor_server_password' ]
[ , [ @copy_job_id = ] 'copy_job_id' OUTPUT ]
[ , [ @restore_job_id = ] 'restore_job_id' OUTPUT ]
[ , [ @secondary_id = ] 'secondary_id' OUTPUT ]
[ , [ @overwrite = ] overwrite ]
[ , [ @ignoreremotemonitor = ] ignoreremotemonitor ]
[ , [ @secondary_connection_options = ] '<key_value_pairs>;[...]' ]
[ , [ @monitor_connection_options = ] '<key_value_pairs>;[...]' ]
[ ; ]
Argumentos
@primary_server [ = ] N'primary_server'
O nome da instância primária do Mecanismo de Banco de Dados do SQL Server em uma configuração de envio de log.
@primary_server é sysname e não pode ser NULL.
@primary_database [ = ] N'primary_database'
O nome do banco de dados no servidor primário. @primary_database é sysname, sem padrão.
@backup_source_directory [ = ] N'backup_source_directory'
O diretório onde os arquivos de backup de log de transações do servidor primário são armazenados.
@backup_source_directory é nvarchar(500) e não pode ser NULL.
@backup_destination_directory [ = ] N'backup_destination_directory'
O diretório no servidor secundário onde arquivos de backup são copiados.
@backup_destination_directory é nvarchar(500) e não pode ser NULL.
[ @copy_job_name = ] N'copy_job_name'
O nome a ser usado para o trabalho do SQL Server Agent que está sendo criado para copiar backups de log de transações para o servidor secundário.
@copy_job_name é sysname e não pode ser NULL.
[ @restore_job_name = ] N'restore_job_name'
O nome do trabalho do SQL Server Agent no servidor secundário que restaura os backups no banco de dados secundário.
@restore_job_name é sysname e não pode ser NULL.
[ @file_retention_period = ] file_retention_period
O período de tempo, em minutos, que um arquivo de backup é retido no servidor secundário no caminho especificado pelo @backup_destination_directory parâmetro antes de ser excluído.
@history_retention_period é int, com um padrão de NULL. O valor 14420 será usado se nenhum valor for especificado.
[ @monitor_server = ] N'monitor_server'
O nome do servidor monitor.
@monitor_server é sysname, sem padrão, e não pode ser NULL.
@monitor_server_security_mode [ = ] monitor_server_security_mode
O modo de segurança usado para conexão ao servidor monitor.
-
1: Autenticação do Windows -
0: Autenticação do SQL Server
@monitor_server_security_mode é bit, com um padrão de 1, e não pode ser NULL.
[ @monitor_server_login = ] N'monitor_server_login'
O nome de usuário da conta usada para acessar o servidor do monitor.
[ @monitor_server_password = ] N'monitor_server_password'
A senha da conta usada para acessar o servidor do monitor.
@copy_job_id [ = ] SAÍDA 'copy_job_id'
A ID associada ao trabalho de cópia no servidor secundário.
@copy_job_id é uniqueidentifier e não pode ser NULL.
@restore_job_id [ = ] 'restore_job_id' SAÍDA
A ID associada ao trabalho de restauração no servidor secundário.
@restore_job_id é uniqueidentifier e não pode ser NULL.
@secondary_id [ = ] SAÍDA 'secondary_id'
ID de servidor secundário na configuração de envio de logs.
@secondary_id é uniqueidentifier e não pode ser NULL.
[ @overwrite = ] substituir
Identificado apenas para fins informativos. Sem suporte. A compatibilidade futura não está garantida.
@ignoreremotemonitor [ = ] ignoreremotemonitor
Identificado apenas para fins informativos. Sem suporte. A compatibilidade futura não está garantida.
[ @secondary_connection_options = ] '<key_value_pairs>;[ ...]'
Aplica-se a: SQL Server 2025 (17.x) e versões posteriores
Especifica opções adicionais de conectividade ao se conectar ao secundário, na forma de pares de valores de chave.
@secondary_connection_options é nvarchar(4000) e tem o padrão de NULL.
A tabela a seguir lista as opções de conectividade disponíveis:
| Key | Value |
|---|---|
Encrypt |
strict, mandatory, optional, , truefalse |
TrustServerCertificate |
true, false, , yesno |
ServerCertificate |
Caminho no sistema de arquivos para o certificado do servidor. Isso tem um comprimento máximo de 260 caracteres. |
HostNameInCertificate |
Substituição de nome do host para o certificado. Isso tem um comprimento máximo de 255 caracteres. |
[ @monitor_connection_options = ] '<key_value_pairs>;[ ...]'
Aplica-se a: SQL Server 2025 (17.x) e versões posteriores
Especifica opções adicionais de conectividade para a conexão do servidor vinculado ao utilizar um monitor remoto, na forma de pares de valores de chave.
@monitor_connection_options é nvarchar(4000) e tem o padrão de NULL.
A tabela a seguir lista as opções de conectividade disponíveis:
| Key | Value |
|---|---|
Encrypt |
strict, mandatory, optional, , truefalse |
TrustServerCertificate |
true, false, , yesno |
ServerCertificate |
Caminho no sistema de arquivos para o certificado do servidor. Isso tem um comprimento máximo de 260 caracteres. |
HostNameInCertificate |
Substituição de nome do host para o certificado. Isso tem um comprimento máximo de 255 caracteres. |
Valores do código de retorno
0 (sucesso) ou 1 (falha).
Conjunto de resultados
Nenhum.
Comentários
sp_add_log_shipping_secondary_primary deve ser executado a master partir do banco de dados no servidor secundário. Esse procedimento armazenado faz o seguinte:
Gera uma ID secundária para o servidor primário especificado e o banco de dados primário.
Faz o seguinte:
- Adiciona uma entrada para a ID secundária usando
log_shipping_secondaryos argumentos fornecidos. - Cria um trabalho de cópia para a ID secundária que é desabilitada.
- Define a ID do trabalho de cópia na
log_shipping_secondaryentrada para a ID do trabalho de cópia. - Cria um trabalho de restauração para a ID secundária que é desabilitada.
- Defina a ID do trabalho de restauração na
log_shipping_secondaryentrada para o ID do trabalho de restauração.
- Adiciona uma entrada para a ID secundária usando
Permissões
Somente membros da função de servidor fixa sysadmin podem executar esse procedimento.
Exemplos
Este exemplo ilustra o uso do sp_add_log_shipping_secondary_primary procedimento armazenado para configurar informações para o banco de dados AdventureWorks2025 primário no servidor secundário.
EXECUTE master.dbo.sp_add_log_shipping_secondary_primary
@primary_server = N'TRIBECA',
@primary_database = N'AdventureWorks2022',
@backup_source_directory = N'\\tribeca\LogShipping',
@backup_destination_directory = N'',
@copy_job_name = N'',
@restore_job_name = N'',
@file_retention_period = 1440,
@monitor_server = N'ROCKAWAY',
@monitor_server_security_mode = 1,
@copy_job_id = @LS_Secondary__CopyJobId OUTPUT,
@restore_job_id = @LS_Secondary__RestoreJobId OUTPUT,
@secondary_id = @LS_Secondary__SecondaryId OUTPUT;
GO