sp_add_log_shipping_secondary_database (Transact-SQL)
Gilt für: SQL Server
Richtet eine sekundäre Datenbank für den Protokollversand ein.
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 "sysname" ohne Standard.
[ @primary_server = ] 'primary_server'
Der Name der primären Instanz der SQL Server-Datenbank-Engine in der Protokollversandkonfiguration @primary_server ist "sysname" und kann nicht seinNULL
.
[ @primary_database = ] 'primary_database'
Der Name der Datenbank auf dem primären Server. @primary_database ist "sysname" ohne Standard.
[ @restore_delay = ] 'restore_delay'
Die Zeit in Minuten, die der sekundäre Server vor dem Wiederherstellen einer bestimmten Sicherungsdatei wartet. @restore_delay ist int und kann nicht seinNULL
. 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 bit und kann nicht seinNULL
.
[ @restore_mode = ] 'restore_mode'
Der Wiederherstellungsmodus für die sekundäre Datenbank.
0
: Protokoll wiederherstellen mitNORECOVERY
1
: Protokoll wiederherstellen mitSTANDBY
@restore_mode ist bit und kann nicht seinNULL
.
[ @disconnect_users = ] 'disconnect_users'
Wenn diese Einstellung 1
festgelegt ist, werden Die Benutzer beim Ausführen eines Wiederherstellungsvorgangs von der sekundären Datenbank getrennt. Der Standardwert ist 0
. @disconnect_users ist bit und kann nicht seinNULL
.
[ @block_size = ] 'block_size'
Die Größe in Bytes, die als Blockgröße für das Sicherungsgerät verwendet wird. @block_size ist int mit dem Standardwert -1.
[ @buffer_count = ] 'buffer_count'
Die Gesamtanzahl der beim Sicherungs- oder Wiederherstellungsvorgang verwendeten Puffer. @buffer_count ist int mit dem Standardwert -1.
[ @max_transfer_size = ] 'max_transfer_size'
Die Größe der maximalen Eingabe- oder Ausgabeanforderung in Bytes, die von SQL Server an das Sicherungsgerät ausgegeben wird. @max_transfersize ist int und kann seinNULL
.
[ @restore_threshold = ] 'restore_threshold'
Die Anzahl der zulässigen Minuten zwischen Wiederherstellungsvorgängen, bevor eine Warnung generiert wird. @restore_threshold ist int und kann nicht seinNULL
.
[ @threshold_alert = ] 'threshold_alert'
Die Warnung, die bei Überschreiten des Sicherungsschwellenwertes ausgelöst wird. @threshold_alert ist "int" mit dem Standardwert 14.420.
[ @threshold_alert_enabled = ] 'threshold_alert_enabled'
Gibt an, ob eine Warnung ausgelöst wird, wenn @restore_threshold überschritten wird. Ein Wert von 1
(Der Standardwert) bedeutet, dass die Warnung ausgelöst wird. @threshold_alert_enabled ist bit.
[ @history_retention_period = ] '@history_retention_period'
Die Zeitdauer in Minuten, in der der Verlauf beibehalten wird. @history_retention_period ist int, mit einem Standardwert von NULL
. Falls nichts angegeben wird, wird ein Wert von 14420 verwendet.
Rückgabecodewerte
0
(erfolgreich) oder 1
Fehler.
Resultset
Keine.
Hinweise
sp_add_log_shipping_secondary_database
muss von der master
Datenbank auf dem sekundären Server ausgeführt werden. Diese gespeicherte Prozedur führt folgende Aktionen aus:
sp_add_log_shipping_secondary_primary
sollte vor dieser gespeicherten Prozedur aufgerufen werden, um die Informationen zur primären Protokollversanddatenbank auf dem sekundären Server zu initialisieren.Fügt einen Eintrag für die sekundäre Datenbank hinzu, indem
log_shipping_secondary_databases
die angegebenen Argumente verwendet werden.Fügt einen lokalen Monitordatensatz
log_shipping_monitor_secondary
auf dem sekundären Server mithilfe der angegebenen Argumente hinzu.Wenn sich der Monitorserver vom sekundären Server unterscheidet,
sp_add_log_shipping_secondary_database
wird ein Monitordatensatzlog_shipping_monitor_secondary
auf dem Monitorserver mithilfe der angegebenen Argumente hinzugefügt.
Berechtigungen
Nur Mitglieder der festen Serverrolle sysadmin können diese Prozedur ausführen.
Beispiele
In diesem Beispiel wird die Verwendung der sp_add_log_shipping_secondary_database
gespeicherten Prozedur veranschaulicht, um die Datenbank LogShipAdventureWorks
als sekundäre Datenbank in einer Protokollversandkonfiguration hinzuzufügen, wobei sich die primäre Datenbank AdventureWorks2022
auf dem primären Server TRIBECA
befindet.
EXEC 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