sp_add_log_shipping_primary_database (Transact-SQL)
Aplica-se: SQL Server
Instala o banco de dados primário para uma configuração de envio de log, incluindo o trabalho de backup, registro de monitor local e registro de monitor remoto.
Convenções de sintaxe de Transact-SQL
Sintaxe
sp_add_log_shipping_primary_database
[ @database = ] 'database'
, [ @backup_directory = ] N'backup_directory'
, [ @backup_share = ] N'backup_share'
, [ @backup_job_name = ] 'backup_job_name'
[ , [ @backup_retention_period = ] backup_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' ]
[ , [ @backup_threshold = ] backup_threshold ]
[ , [ @threshold_alert = ] threshold_alert ]
[ , [ @threshold_alert_enabled = ] threshold_alert_enabled ]
[ , [ @history_retention_period = ] history_retention_period ]
[ , [ @backup_job_id = ] backup_job_id OUTPUT ]
[ , [ @primary_id = ] primary_id OUTPUT ]
[ , [ @backup_compression = ] backup_compression_option ]
[ ; ]
Argumentos
@database [ = ] 'banco de dados'
O nome do banco de dados primário de envio de logs. @database é sysname, sem padrão, e não pode ser NULL
.
@backup_directory [ = ] N'backup_directory'
O caminho para a pasta de backup no servidor primário. @backup_directory é nvarchar(500), sem padrão, e não pode ser NULL
.
@backup_share [ = ] N'backup_share'
O caminho de rede para o diretório de backup no servidor primário. @backup_share é nvarchar(500)NULL
@backup_job_name [ = ] 'backup_job_name'
O nome do trabalho do SQL Server Agent no servidor primário que copia o backup para a pasta de backup. @backup_job_name é sysname e não pode ser NULL
.
@backup_retention_period [ = ] backup_retention_period
O período de tempo, em minutos, para reter o arquivo de backup de log no diretório de backup no servidor primário. @backup_retention_period é int, sem padrão, e não pode ser NULL
.
@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 Windows0
: 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 do monitor.
@monitor_server_password [ = ] 'monitor_server_password'
A senha da conta usada para acessar o servidor do monitor.
@backup_threshold [ = ] backup_threshold
O período de tempo, em minutos, após o último backup antes que um erro de @threshold_alert seja gerado. @backup_threshold é int, com um padrão de 60 minutos.
@threshold_alert [ = ] threshold_alert
O alerta a ser emitido quando o limite do backup for excedido. @threshold_alert é int, com um padrão de 14.420.
@threshold_alert_enabled [ = ] threshold_alert_enabled
Especifica se um alerta é gerado quando @backup_threshold é excedido. O valor de zero (0), o padrão, significa que o alerta está desabilitado e não será gerado. @threshold_alert_enabled é pouco.
@history_retention_period [ = ] history_retention_period
O período de tempo em minutos em que o histórico é retido. @history_retention_period é int, com um padrão de NULL
. O valor 14420 será usado se nenhum valor for especificado.
@backup_job_id [ = ] backup_job_id SAÍDA
A ID do trabalho do SQL Server Agent associada ao trabalho de backup no servidor primário. @backup_job_id é um parâmetro OUTPUT do tipo uniqueidentifier e não pode ser NULL
.
@primary_id [ = ] primary_id SAÍDA
A ID do banco de dados primário para a configuração de envio de log. @primary_id é um parâmetro OUTPUT do tipo uniqueidentifier e não pode ser NULL
.
@backup_compression [ = ] backup_compression_option
Especifica se uma configuração de envio de logs usa compactação de backup.
0
:Desactivado. Nunca compacte backups de log.1
:Habilitado. Sempre compacte backups de log.2
(padrão): use a configuração da Exibição ou configure o padrão de compactação de backup (opção de configuração do servidor).
Valores do código de retorno
0
(sucesso) ou 1
(falha).
Conjunto de resultados
Nenhum.
Comentários
sp_add_log_shipping_primary_database
deve ser executado a partir do master
banco de dados no servidor primário. Esse procedimento armazenado executa as seguintes funções:
Gera uma ID primária e adiciona uma entrada para o banco de dados primário na tabela
log_shipping_primary_databases
usando os argumentos fornecidos.Cria um trabalho de backup para o banco de dados primário que está desabilitado.
Define a ID da tarefa de backup na
log_shipping_primary_databases
entrada para a ID da tarefa de backup.Adiciona um registro de monitor local na tabela
log_shipping_monitor_primary
no servidor primário usando argumentos fornecidos.Se o servidor monitor for diferente do servidor primário,
sp_add_log_shipping_primary_database
adicionará um registrolog_shipping_monitor_primary
de monitor no servidor monitor usando os argumentos fornecidos.
Permissões
Somente membros da função de servidor fixa sysadmin podem executar esse procedimento.
Exemplos
Este exemplo adiciona o banco de dados AdventureWorks2022
como banco de dados primário em uma configuração de envio de log.
DECLARE @LS_BackupJobId AS UNIQUEIDENTIFIER;
DECLARE @LS_PrimaryId AS UNIQUEIDENTIFIER;
EXEC master.dbo.sp_add_log_shipping_primary_database
@database = N'AdventureWorks',
@backup_directory = N'c:\lsbackup',
@backup_share = N'\\tribeca\lsbackup',
@backup_job_name = N'LSBackup_AdventureWorks',
@backup_retention_period = 1440,
@monitor_server = N'rockaway',
@monitor_server_security_mode = 1,
@backup_threshold = 60,
@threshold_alert = 0,
@threshold_alert_enabled = 0,
@history_retention_period = 1440,
@backup_job_id = @LS_BackupJobId OUTPUT,
@primary_id = @LS_PrimaryId OUTPUT,
@overwrite = 1,
@backup_compression = 0;
GO