Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Gilt für:SQL Server
Richtet die primären Informationen ein, fügt Links zur lokalen und Remoteüberwachung hinzu und erstellt auf dem sekundären Server Kopier- und Wiederherstellungsaufträge für die angegebene primäre Datenbank.
Transact-SQL-Syntaxkonventionen
Syntax
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 ]
[ , [ @secondary_connection_options = ] '<key_value_pairs>;[...]' ]
[ , [ @monitor_connection_options = ] '<key_value_pairs>;[...]' ]
[ ; ]
Argumente
[ @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.
[ @backup_source_directory = ] N'backup_source_directory'
Das Verzeichnis, in dem die Dateien der Transaktionsprotokollsicherung gespeichert werden.
@backup_source_directory ist nvarchar(500) und kann nicht seinNULL.
[ @backup_destination_directory = ] N'backup_destination_directory'
Das Verzeichnis auf dem sekundären Server, in das Sicherungsdateien kopiert werden
@backup_destination_directory ist nvarchar(500) und kann nicht seinNULL.
[ @copy_job_name = ] 'copy_job_name'
Der Name, der für den erstellten SQL Server-Agent Auftrag verwendet werden soll, um Transaktionsprotokollsicherungen auf den sekundären Server zu kopieren.
copy_job_name ist "sysname" und kann nicht seinNULL.
[ @restore_job_name = ] 'restore_job_name'
Der Name des SQL Server-Agent Auftrags auf dem sekundären Server, mit dem die Sicherungen in der sekundären Datenbank wiederhergestellt werden.
restore_job_name ist "sysname" und kann nicht seinNULL.
[ @file_retention_period = ] 'file_retention_period'
Die Zeitdauer in Minuten, die eine Sicherungsdatei auf dem sekundären Server im durch den @backup_destination_directory Parameter angegebenen Pfad aufbewahrt wird, bevor sie gelöscht werden.
@history_retention_period ist int, mit einem Standardwert von NULL. Falls nichts angegeben wird, wird ein Wert von 14420 verwendet.
[ @monitor_server = ] 'monitor_server'
Der Name des Monitorservers.
@monitor_server ist "sysname" ohne Standard und kann nicht seinNULL.
[ @monitor_server_security_mode = ] 'monitor_server_security_mode'
Der Sicherheitsmodus, der zum Herstellen einer Verbindung mit dem Überwachungsserver verwendet wird.
-
1: Windows-Authentifizierung -
0: SQL Server-Authentifizierung
@monitor_server_security_mode ist bit, mit einem Standardwert von 1, und kann nicht seinNULL.
[ @monitor_server_login = ] 'monitor_server_login'
Der Benutzername des Kontos, das für den Zugriff auf den Monitorserver verwendet wird.
[ @monitor_server_password = ] 'monitor_server_password'
Das Kennwort des Kontos, das für den Zugriff auf den Monitorserver verwendet wird.
[ @copy_job_id = ] 'copy_job_id' AUSGABE
Die dem Kopierauftrag zugeordnete ID auf dem sekundären Server
@copy_job_id ist eindeutiger Bezeichner und kann nicht seinNULL.
[ @restore_job_id = ] 'restore_job_id' AUSGABE
Die dem Wiederherstellungsauftrag zugeordnete ID auf dem sekundären Server
@restore_job_id ist eindeutiger Bezeichner und kann nicht seinNULL.
[ @secondary_id = ] 'secondary_id' AUSGABE
Die ID für den sekundären Server in der Protokollversandkonfiguration.
@secondary_id ist eindeutiger Bezeichner und kann nicht seinNULL.
[ @secondary_connection_options = ] '<key_value_pairs>;[ ...]'
Gilt für: SQL Server 2025 (17.x) und spätere Versionen
Gibt zusätzliche Konnektivitätsoptionen beim Herstellen einer Verbindung mit der sekundären Verbindung in Form von Schlüsselwertpaaren an.
@secondary_connection_options ist nvarchar(4000) und hat den Standardwert von NULL.
In der folgenden Tabelle sind die verfügbaren Konnektivitätsoptionen aufgeführt:
| Key | Wert |
|---|---|
Encrypt |
strict, , mandatoryoptional, , truefalse |
TrustServerCertificate |
true
false
yes
no
|
ServerCertificate |
Pfad im Dateisystem zum Serverzertifikat. Dies hat eine maximale Länge von 260 Zeichen. |
HostNameInCertificate |
Hostname außer Kraft setzen für das Zertifikat. Dies hat eine maximale Länge von 255 Zeichen. |
[ @monitor_connection_options = ] '<key_value_pairs>;[ ...]'
Gilt für: SQL Server 2025 (17.x) und spätere Versionen
Gibt zusätzliche Konnektivitätsoptionen für die verknüpfte Serververbindung bei Verwendung eines Remotemonitors in Form von Schlüsselwertpaaren an.
@monitor_connection_options ist nvarchar(4000) und hat den Standardwert von NULL.
In der folgenden Tabelle sind die verfügbaren Konnektivitätsoptionen aufgeführt:
| Key | Wert |
|---|---|
Encrypt |
strict, , mandatoryoptional, , truefalse |
TrustServerCertificate |
true
false
yes
no
|
ServerCertificate |
Pfad im Dateisystem zum Serverzertifikat. Dies hat eine maximale Länge von 260 Zeichen. |
HostNameInCertificate |
Hostname außer Kraft setzen für das Zertifikat. Dies hat eine maximale Länge von 255 Zeichen. |
Rückgabecodewerte
0 (erfolgreich) oder 1 Fehler.
Resultset
Keine.
Hinweise
sp_add_log_shipping_secondary_primary muss von der master Datenbank auf dem sekundären Server ausgeführt werden. Diese gespeicherte Prozedur führt folgende Aktionen aus:
Generiert eine sekundäre ID für den angegebenen primären Server und die primäre Datenbank.
Führt Folgendes aus:
- Fügt einen Eintrag für die sekundäre ID hinzu, indem
log_shipping_secondarydie angegebenen Argumente verwendet werden. - Erstellt einen Kopierauftrag für die sekundäre ID, die deaktiviert ist.
- Legt die Kopierauftrags-ID im
log_shipping_secondaryEintrag auf die Auftrags-ID des Kopierauftrags fest. - Erstellt einen Wiederherstellungsauftrag für die sekundäre ID, die deaktiviert ist.
- Legen Sie die Wiederherstellungsauftrags-ID im
log_shipping_secondaryEintrag auf die Auftrags-ID des Wiederherstellungsauftrags fest.
- Fügt einen Eintrag für die sekundäre ID hinzu, indem
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_primary gespeicherten Prozedur zum Einrichten von Informationen für die primäre Datenbank AdventureWorks2025 auf dem sekundären Server veranschaulicht.
EXECUTE 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