sp_add_log_shipping_secondary_primary (Transact-SQL)

Aplica-se a: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

sp_add_log_shipping_secondary_primary
    [ @primary_server = ] 'primary_server'
    , [ @primary_database = ] 'primary_database'
    , [ @backup_source_directory = ] N'backup_source_directory'
    , [ @backup_destination_directory = ] N'backup_destination_directory'
    , [ @copy_job_name = ] 'copy_job_name'
    , [ @restore_job_name = ] 'restore_job_name'
    [ , [ @file_retention_period = ] 'file_retention_period' ]
    [ , [ @monitor_server = ] 'monitor_server' ]
    [ , [ @monitor_server_security_mode = ] 'monitor_server_security_mode' ]
    [ , [ @monitor_server_login = ] 'monitor_server_login' ]
    [ , [ @monitor_server_password = ] 'monitor_server_password' ]
    [ , [ @copy_job_id = ] 'copy_job_id' OUTPUT ]
    [ , [ @restore_job_id = ] 'restore_job_id' OUTPUT ]
    [ , [ @secondary_id = ] 'secondary_id' OUTPUT ]
[ ; ]

Argumentos

@primary_server [ = ] '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 [ = ] '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 [ = ] '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 [ = ] '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 [ = ] '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 [ = ] 'monitor_server_login'

O nome de usuário da conta usada para acessar o servidor monitor.

@monitor_server_password [ = ] 'monitor_server_password'

A senha da conta usada para acessar o servidor 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 [ = ] SAÍDA 'restore_job_id'

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.

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:

  1. Gera uma ID secundária para o servidor primário especificado e o banco de dados primário.

  2. Faz o seguinte:

    1. Adiciona uma entrada para a ID secundária usando log_shipping_secondary os argumentos fornecidos.
    2. Cria um trabalho de cópia para a ID secundária que é desabilitada.
    3. Define a ID do trabalho de cópia na log_shipping_secondary entrada para a ID do trabalho de cópia.
    4. Cria um trabalho de restauração para a ID secundária que é desabilitada.
    5. Defina a ID do trabalho de restauração na log_shipping_secondary entrada para a ID do trabalho de restauração.

Permissões

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

Exemplos

Este exemplo ilustra o uso do procedimento armazenado para configurar informações para o sp_add_log_shipping_secondary_primary banco de dados AdventureWorks2022 primário no servidor secundário.

EXEC 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