sp_add_log_shipping_secondary_database (Transact-SQL)

Richtet eine sekundäre Datenbank für den Protokollversand ein.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

        sp_add_log_shipping_secondary_database
[ @secondary_database = ] 'secondary_database',
[ @primary_server = ] 'primary_server', 
[ @primary_database = ] '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']

Argumente

  • [ @secondary_database = ] 'secondary_database'
    Der Name der sekundären Datenbank. secondary_database ist vom Datentyp sysname und hat keinen Standardwert.

  • [ @primary_server = ] 'primary_server'
    Der Name der primären Instanz von Microsoft SQL Server Database Engine (Datenbankmodul) in der Protokollversandkonfiguration. primary_server ist ein Wert vom Datentyp sysname und kann nicht NULL sein.

  • [ @primary_database = ] 'primary_database'
    Der Name der Datenbank auf dem primären Server. primary_database ist vom Datentyp sysname und hat keinen Standardwert.

  • [ @restore_delay = ] 'restore_delay'
    Der Zeitraum (in Minuten), den der sekundäre Server wartet, bevor eine bestimmte Sicherungsdatei wiederhergestellt wird. restore_delay ist vom Datentyp int und kann nicht NULL sein. Der Standardwert ist 0.

  • [ @restore_all = ] 'restore_all'
    Falls 1, stellt der sekundäre Server bei Ausführung des Wiederherstellungsauftrags alle verfügbaren Sicherungen des Transaktionsprotokolls wieder her. Andernfalls wird der Vorgang nach der Wiederherstellung einer Datei beendet. restore_all ist vom Datentyp bit und kann nicht NULL sein.

  • [ @restore_mode = ] 'restore_mode'
    Der Wiederherstellungsmodus für die sekundäre Datenbank.

    0 = Das Protokoll wird mit NORECOVERY wiederhergestellt.

    1 = Das Protokoll wird mit STANDBY wiederhergestellt.

    restore ist vom Datentyp bit und kann nicht NULL sein.

  • [ @disconnect_users = ] 'disconnect_users'
    Falls 1, werden Benutzer beim Ausführen eines Wiederherstellungsvorgangs von der sekundären Datenbank getrennt. Standardwert = 0. disconnect_users ist vom Datentyp bit und kann nicht NULL sein.

  • [ @block_size = ] 'block_size'
    Die Größe in Bytes, die als Blockgröße für das Sicherungsmedium verwendet wird. block_size ist vom Datentyp int und hat den Standardwert -1.

  • [ @buffer_count = ] 'buffer_count'
    Die Gesamtanzahl der vom Sicherungs- oder Wiederherstellungsvorgang verwendeten Puffer. buffer_count ist vom Datentyp int und hat den Standardwert -1.

  • [ @max_transfer_size = ] 'max_transfer_size'
    Die Größe (in Bytes) der maximalen Eingabe- oder Ausgabeanforderung, die von SQL Server an das Sicherungsmedium ausgegeben wird. max_transfersize ist vom Datentyp int und kann NULL sein.

  • [ @restore_threshold = ] 'restore_threshold'
    Die Anzahl von Minuten, die zwischen Wiederherstellungsvorgängen verstreichen darf, bevor eine Warnung generiert wird. restore_threshold ist vom Datentyp int und kann nicht NULL sein.

  • [ @threshold_alert = ] 'threshold_alert'
    Die Warnung, die beim Überschreiten des Sicherungsschwellenwertes ausgelöst wird. threshold_alert ist vom Datentyp int und hat den Standardwert 14,420.

  • [ @threshold_alert_enabled = ] 'threshold_alert_enabled'
    Gibt an, ob eine Warnung ausgelöst wird, wenn backup_threshold überschritten wird. Der Standardwert Eins (1) bedeutet, dass die Warnung ausgelöst wird. threshold_alert_enabled ist vom Datentyp bit.

  • [ @history_retention_period = ] 'history_retention_period'
    Gibt an, wie lange (in Minuten) der Verlauf beibehalten wird. history_retention_period ist vom Datentyp int und hat den Standardwert NULL. Falls nichts angegeben wird, wird ein Wert von 14420 verwendet.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler)

Resultsets

Keine

Hinweise

sp_add_log_shipping_secondary_database muss in der master-Datenbank auf dem sekundären Server ausgeführt werden. Diese gespeicherte Prozedur führt folgende Aktionen aus:

  1. sp_add_log_shipping_secondary_primary sollte vor dieser gespeicherten Prozedur aufgerufen werden, um die primären Protokollversand-Datenbankinformationen auf dem sekundären Server zu initialisieren.

  2. Fügt einen Eintrag für die sekundäre Datenbank in log_shipping_secondary_databases hinzu, wobei die angegebenen Argumente verwendet werden.

  3. Fügt einen lokalen Überwachungsdatensatz in log_shipping_monitor_secondary auf dem sekundären Server hinzu, wobei die angegebenen Argumente verwendet werden.

  4. Falls der Überwachungsserver nicht mit dem sekundären Server übereinstimmt, wird der Überwachungsdatensatz in log_shipping_monitor_secondary auf dem Überwachungsserver hinzugefügt, wobei die angegebenen Argumente verwendet werden.

Berechtigungen

Nur Mitglieder der festen Serverrolle sysadmin können diese Prozedur ausführen.

Beispiele

In diesem Beispiel wird die Verwendung der gespeicherten Prozedur sp_add_log_shipping_secondary_database zum Hinzufügen der Datenbank LogShipAdventureWorks2008R2 als sekundäre Datenbank in einer Protokollversandkonfiguration erläutert, wobei sich die primäre Datenbank AdventureWorks2008R2 auf dem primären Server TRIBECA befindet.

EXEC master.dbo.sp_add_log_shipping_secondary_database 
@secondary_database = N'LogShipAdventureWorks2008R2' 
,@primary_server = N'TRIBECA' 
,@primary_database = N'AdventureWorks2008R2' 
,@restore_delay = 0 
,@restore_mode = 1 
,@disconnect_users = 0 
,@restore_threshold = 45   
,@threshold_alert_enabled = 0 
,@history_retention_period = 1440 
GO