sys.sp_add_log_shipping_secondary_database (Transact-SQL)

Si applica a:SQL Server

Imposta un database secondario per il log shipping.

Convenzioni relative alla sintassi Transact-SQL

Sintassi

sys.sp_add_log_shipping_secondary_database
    [ @secondary_database = ] N'secondary_database'
    , [ @primary_server = ] N'primary_server'
    , [ @primary_database = ] N'primary_database'
    [ , [ @restore_delay = ] restore_delay ]
    [ , [ @restore_all = ] restore_all ]
    [ , [ @restore_mode = ] restore_mode ]
    [ , [ @disconnect_users = ] disconnect_users ]
    [ , [ @block_size = ] block_size ]
    [ , [ @buffer_count = ] buffer_count ]
    [ , [ @max_transfer_size = ] max_transfer_size ]
    [ , [ @restore_threshold = ] restore_threshold ]
    [ , [ @threshold_alert = ] threshold_alert ]
    [ , [ @threshold_alert_enabled = ] threshold_alert_enabled ]
    [ , [ @history_retention_period = ] history_retention_period ]
    [ , [ @overwrite = ] overwrite ]
    [ , [ @ignoreremotemonitor = ] ignoreremotemonitor ]
[ ; ]

Argomenti

[ @secondary_database = ] N'secondary_database'

Nome del database secondario. @secondary_database è sysname, senza impostazione predefinita.

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

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

[ @restore_delay = ] restore_delay

Indica per quanti minuti il server secondario deve attendere prima di ripristinare un file di backup specifico. @restore_delay è int e non può essere NULL. Il valore predefinito è 0.

[ @restore_all = ] restore_all

Se impostato su 1, il server secondario ripristina tutti i backup del log delle transazioni disponibili al momento dell'esecuzione del processo di ripristino. In caso contrario, l'operazione viene arrestata dopo il ripristino di un file. @restore_all è bit e non può essere NULL.

[ @restore_mode = ] restore_mode

Modalità di ripristino per il database secondario.

  • 0: ripristino del log con NORECOVERY
  • 1: ripristino del log con STANDBY

@restore_mode è bit e non può essere NULL.

[ @disconnect_users = ] disconnect_users

Se impostato su 1, gli utenti vengono disconnessi dal database secondario quando viene eseguita un'operazione di ripristino. Il valore predefinito è 0. @disconnect_users è bit e non può essere NULL.

[ @block_size = ] block_size

Dimensioni, in byte, usate come dimensioni del blocco per il dispositivo di backup. @block_size è int con il valore predefinito -1.

[ @buffer_count = ] buffer_count

Numero totale di buffer utilizzati dall'operazione di backup o di ripristino. @buffer_count è int con il valore predefinito -1.

[ @max_transfer_size = ] max_transfer_size

Dimensioni, in byte, della richiesta di input o output massima rilasciata da SQL Server al dispositivo di backup. @max_transfersize è int e può essere NULL.

[ @restore_threshold = ] restore_threshold

Numero di minuti che può trascorrere tra operazioni di ripristino prima che venga generato un avviso. @restore_threshold è int e non può essere NULL.

[ @threshold_alert = ] threshold_alert

Avviso da generare quando viene superata la soglia per il backup. @threshold_alert è int, con un valore predefinito pari a 14.420.

[ @threshold_alert_enabled = ] threshold_alert_enabled

Specifica se viene generato un avviso quando viene superato @restore_threshold . Un valore ( 1 impostazione predefinita) indica che viene generato l'avviso. @threshold_alert_enabled è bit.

[ @history_retention_period = ] history_retention_period

Periodo di tempo in minuti in cui viene mantenuta la cronologia. @history_retention_period è int, con il valore predefinito NULL. Se non si specifica un valore, verrà utilizzato il valore 14420.

[ @overwrite = ] sovrascrivere

Identificato solo a scopo informativo. Non supportato. Non è garantita la compatibilità con le versioni future.

[ @ignoreremotemonitor = ] ignoramonitormonitoreremoto

Identificato solo a scopo informativo. Non supportato. Non è garantita la compatibilità con le versioni future.

Valori del codice restituito

0 (esito positivo) o 1 (errore).

Set di risultati

Nessuno.

Osservazioni:

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

  1. sp_add_log_shipping_secondary_primary deve essere chiamato prima di questa stored procedure per inizializzare le informazioni sul database di log shipping primario nel server secondario.

  2. Aggiunge una voce per il database secondario in log_shipping_secondary_databases utilizzando gli argomenti forniti.

  3. Aggiunge un record di monitoraggio locale in log_shipping_monitor_secondary nel server secondario utilizzando argomenti forniti.

  4. Se il server di monitoraggio è diverso dal server secondario, sp_add_log_shipping_secondary_database aggiunge un record di monitoraggio nel log_shipping_monitor_secondary server di monitoraggio utilizzando gli argomenti forniti.

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_database stored procedure per aggiungere il database LogShipAdventureWorks come database secondario in una configurazione di log shipping con il database AdventureWorks2025 primario che risiede nel server TRIBECAprimario .

EXECUTE master.dbo.sp_add_log_shipping_secondary_database
    @secondary_database = N'LogShipAdventureWorks',
    @primary_server = N'TRIBECA',
    @primary_database = N'AdventureWorks2022',
    @restore_delay = 0,
    @restore_mode = 1,
    @disconnect_users = 0,
    @restore_threshold = 45,
    @threshold_alert_enabled = 0,
    @history_retention_period = 1440;
GO