Udostępnij za pomocą


sp_add_log_shipping_secondary_primary (Transact-SQL)

Dotyczy:SQL Server

Konfiguruje podstawowe informacje, dodaje łącza lokalnego i zdalnego monitorowania oraz tworzy zadania kopiowania i przywracania na serwerze pomocniczym dla określonej podstawowej bazy danych.

Transact-SQL konwencje składni

Składnia

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

Arguments

[ @primary_server = ] 'primary_server'

Nazwa podstawowego wystąpienia aparatu bazy danych programu SQL Server w konfiguracji wysyłania dziennika. @primary_server jest nazwą sysname i nie może być NULL.

[ @primary_database = ] 'primary_database'

Nazwa bazy danych na serwerze podstawowym. @primary_database jest nazwą systemu bez wartości domyślnej.

[ @backup_source_directory = ] N'backup_source_directory'

Katalog, w którym są przechowywane pliki kopii zapasowej dziennika transakcji z serwera podstawowego. @backup_source_directory to nvarchar(500) i nie może być NULL.

[ @backup_destination_directory = ] N'backup_destination_directory'

Katalog na serwerze pomocniczym, do którego są kopiowane pliki kopii zapasowej. @backup_destination_directory to nvarchar(500) i nie może być NULL.

[ @copy_job_name = ] 'copy_job_name'

Nazwa używana do utworzenia zadania agenta programu SQL Server w celu skopiowania kopii zapasowych dziennika transakcji na serwer pomocniczy. copy_job_name jest nazwą sysname i nie może być NULL.

[ @restore_job_name = ] 'restore_job_name'

Nazwa zadania agenta programu SQL Server na serwerze pomocniczym, który przywraca kopie zapasowe do pomocniczej bazy danych. restore_job_name jest nazwą sysname i nie może być NULL.

[ @file_retention_period = ] 'file_retention_period'

Czas przechowywania pliku kopii zapasowej na serwerze pomocniczym w ścieżce określonej przez parametr przed usunięciem @backup_destination_directory pliku kopii zapasowej. @history_retention_period jest int z wartością domyślną NULL. Wartość 14420 jest używana, jeśli nie określono żadnej.

[ @monitor_server = ] 'monitor_server'

Nazwa serwera monitora. @monitor_server jest nazwą systemu bez wartości domyślnej i nie może być NULL.

[ @monitor_server_security_mode = ] 'monitor_server_security_mode'

Tryb zabezpieczeń używany do nawiązywania połączenia z serwerem monitora.

  • 1: Uwierzytelnianie systemu Windows
  • 0: Uwierzytelnianie programu SQL Server

@monitor_server_security_mode jest bit, z wartością domyślną 1, a nie może być NULL.

[ @monitor_server_login = ] 'monitor_server_login'

Nazwa użytkownika konta używanego do uzyskiwania dostępu do serwera monitora.

[ @monitor_server_password = ] 'monitor_server_password'

Hasło konta używanego do uzyskiwania dostępu do serwera monitora.

[ @copy_job_id = ] WYJŚCIE 'copy_job_id'

Identyfikator skojarzony z zadaniem kopiowania na serwerze pomocniczym. @copy_job_id jest unikatowyidentifier i nie może być NULL.

[ @restore_job_id = ] WYJŚCIE 'restore_job_id'

Identyfikator skojarzony z zadaniem przywracania na serwerze pomocniczym. @restore_job_id jest unikatowyidentifier i nie może być NULL.

[ @secondary_id = ] WYJŚCIE 'secondary_id'

Identyfikator serwera pomocniczego w konfiguracji wysyłania dziennika. @secondary_id jest unikatowyidentifier i nie może być NULL.

[ @secondary_connection_options = ] '<key_value_pairs>;[ ...]'

Dotyczy do: SQL Server 2025 (17.x) i nowszych wersji

Określa dodatkowe opcje łączności podczas nawiązywania połączenia z pomocniczym, w postaci par klucz wartość. @secondary_connection_options to nvarchar(4000) i ma wartość domyślną NULL.

W poniższej tabeli wymieniono dostępne opcje łączności:

Key Wartość
Encrypt strict, , mandatory, optional, , truefalse
TrustServerCertificate true, , false, , yesno
ServerCertificate Ścieżka w systemie plików do certyfikatu serwera. Ma maksymalną długość 260 znaków.
HostNameInCertificate Zastąpić nazwę hosta dla certyfikatu. Ma maksymalną długość 255 znaków.

[ @monitor_connection_options = ] '<key_value_pairs>;[ ...]'

Dotyczy do: SQL Server 2025 (17.x) i nowszych wersji

Określa dodatkowe opcje łączności dla połączenia serwera połączonego podczas korzystania z monitora zdalnego w postaci par klucz wartość. @monitor_connection_options to nvarchar(4000) i ma wartość domyślną NULL.

W poniższej tabeli wymieniono dostępne opcje łączności:

Key Wartość
Encrypt strict, , mandatory, optional, , truefalse
TrustServerCertificate true, , false, , yesno
ServerCertificate Ścieżka w systemie plików do certyfikatu serwera. Ma maksymalną długość 260 znaków.
HostNameInCertificate Zastąpić nazwę hosta dla certyfikatu. Ma maksymalną długość 255 znaków.

Zwracanie wartości kodu

0 (powodzenie) lub 1 (niepowodzenie).

Zestaw wyników

Żaden.

Uwagi

sp_add_log_shipping_secondary_primary należy uruchomić z master bazy danych na serwerze pomocniczym. Ta procedura składowana wykonuje następujące czynności:

  1. Generuje pomocniczy identyfikator określonego serwera podstawowego i podstawowej bazy danych.

  2. Wykonuje następujące czynności:

    1. Dodaje wpis dla identyfikatora pomocniczego przy log_shipping_secondary użyciu podanych argumentów.
    2. Tworzy zadanie kopiowania dla identyfikatora pomocniczego, które jest wyłączone.
    3. Ustawia identyfikator zadania kopiowania we wpisie log_shipping_secondary na identyfikator zadania kopiowania.
    4. Tworzy zadanie przywracania dla identyfikatora pomocniczego, które jest wyłączone.
    5. Ustaw identyfikator zadania przywracania we wpisie log_shipping_secondary na identyfikator zadania przywracania.

Permissions

Tę procedurę mogą uruchamiać tylko członkowie stałej roli serwera sysadmin .

Przykłady

W tym przykładzie sp_add_log_shipping_secondary_primary pokazano użycie procedury składowanej w celu skonfigurowania informacji dla podstawowej bazy danych AdventureWorks2025 na serwerze pomocniczym.

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