Condividi tramite


sp_add_log_shipping_secondary_primary (Transact-SQL)

Si applica a: SQL Server

Imposta le informazioni primarie, aggiunge collegamenti di monitoraggio locale e remoto e crea processi di copia e di ripristino nel server secondario per il database primario specificato.

Convenzioni relative alla sintassi Transact-SQL

Sintassi

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 ]
[ ; ]

Argomenti

[ @primary_server = ] 'primary_server'

Nome dell'istanza primaria del Motore di database di SQL Server nella configurazione di log shipping. @primary_server è sysname e non può essere NULL.

[ @primary_database = ] 'primary_database'

Nome del database nel server primario. @primary_database è sysname, senza impostazione predefinita.

[ @backup_source_directory = ] N'backup_source_directory'

Directory in cui vengono archiviati i file di backup del log delle transazioni dal server primario. @backup_source_directory è nvarchar(500) e non può essere NULL.

[ @backup_destination_directory = ] N'backup_destination_directory'

Directory nel server secondario in cui vengono copiati i file di backup. @backup_destination_directory è nvarchar(500) e non può essere NULL.

[ @copy_job_name = ] 'copy_job_name'

Nome da usare per il processo di SQL Server Agent creato per copiare i backup del log delle transazioni nel server secondario. copy_job_name è sysname e non può essere NULL.

[ @restore_job_name = ] 'restore_job_name'

Nome del processo di SQL Server Agent nel server secondario che ripristina i backup nel database secondario. restore_job_name è sysname e non può essere NULL.

[ @file_retention_period = ] 'file_retention_period'

Periodo di tempo, espresso in minuti, per cui un file di backup viene conservato nel server secondario nel percorso specificato dal @backup_destination_directory parametro prima di essere eliminato. @history_retention_period è int, con il valore predefinito NULL. Se non si specifica un valore, verrà utilizzato il valore 14420.

[ @monitor_server = ] 'monitor_server'

Nome del server di monitoraggio. @monitor_server è sysname, senza impostazione predefinita e non può essere NULL.

[ @monitor_server_security_mode = ] 'monitor_server_security_mode'

Modalità di sicurezza utilizzata per connettersi al server di monitoraggio.

  • 1: autenticazione di Windows
  • 0: autenticazione di SQL Server

@monitor_server_security_mode è bit, con un valore predefinito e 1non può essere NULL.

[ @monitor_server_login = ] 'monitor_server_login'

Nome utente dell'account utilizzato per accedere al server di monitoraggio.

[ @monitor_server_password = ] 'monitor_server_password'

Password dell'account utilizzato per accedere al server di monitoraggio.

[ @copy_job_id = ] OUTPUT 'copy_job_id'

ID associato al processo di copia nel server secondario. @copy_job_id è uniqueidentifier e non può essere NULL.

[ @restore_job_id = ] OUTPUT 'restore_job_id'

ID associato al processo di ripristino nel server secondario. @restore_job_id è uniqueidentifier e non può essere NULL.

[ @secondary_id = ] OUTPUT 'secondary_id'

ID del server secondario nella configurazione per il log shipping. @secondary_id è uniqueidentifier e non può essere NULL.

Valori del codice restituito

0 (esito positivo) o 1 (errore).

Set di risultati

Nessuno.

Osservazioni:

sp_add_log_shipping_secondary_primary deve essere eseguito dal master database nel server secondario. Questa stored procedure esegue le operazioni seguenti:

  1. Genera un ID secondario per il server e il database primari specificati.

  2. Esegue le operazioni seguenti:

    1. Aggiunge una voce per l'ID secondario in log_shipping_secondary utilizzando gli argomenti forniti.
    2. Crea un processo di copia per l'ID secondario disabilitato.
    3. Imposta l'ID processo di copia nella log_shipping_secondary voce sull'ID processo del processo di copia.
    4. Crea un processo di ripristino per l'ID secondario disabilitato.
    5. Impostare l'ID processo di ripristino nella log_shipping_secondary voce sull'ID processo del processo di ripristino.

Autorizzazioni

Solo i membri del ruolo predefinito del server sysadmin possono eseguire questa procedura.

Esempi

In questo esempio viene illustrato l'utilizzo della sp_add_log_shipping_secondary_primary stored procedure per configurare le informazioni per il database AdventureWorks2022 primario nel server secondario.

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