Share via


sp_add_log_shipping_secondary_database (Transact-SQL)

Van toepassing op:SQL Server

Zet een secundaire database op voor het verzenden van logboeken.

Transact-SQL syntaxis-conventies

Syntaxis

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

Arguments

[ @secondary_database = ] 'secondary_database'

De naam van de secundaire database. @secondary_database is sysname, zonder standaard.

[ @primary_server = ] 'primary_server'

De naam van het primaire exemplaar van de SQL Server Database Engine in de configuratie voor logboekverzending. @primary_server is sysname en kan dat niet zijn NULL.

[ @primary_database = ] 'primary_database'

De naam van de database op de primaire server. @primary_database is sysname, zonder standaardinstelling.

[ @restore_delay = ] 'restore_delay'

De hoeveelheid tijd, in minuten, die de secundaire server wacht voordat een bepaald back-upbestand wordt hersteld. @restore_delay is int en kan niet zijn NULL. De standaardwaarde is 0.

[ @restore_all = ] 'restore_all'

Als deze optie is ingesteld op 1, herstelt de secundaire server alle beschikbare back-ups van transactielogboeken wanneer de hersteltaak wordt uitgevoerd. Anders stopt het nadat één bestand is hersteld. @restore_all is gebeten en kan niet NULL.

[ @restore_mode = ] 'restore_mode'

De herstelmodus voor de secundaire database.

  • 0: Log herstellen met NORECOVERY
  • 1: log restore met STANDBY

@restore_mode is gebit en kan niet zijn NULL.

[ @disconnect_users = ] 'disconnect_users'

Als ingesteld op 1, worden gebruikers losgekoppeld van de secundaire database wanneer een hersteloperatie wordt uitgevoerd. De standaardwaarde is 0. @disconnect_users is gebit en kan niet zijn NULL.

[ @block_size = ] 'block_size'

De grootte, in bytes, gebruikt als blokgrootte voor het back-upapparaat. @block_size is int met een standaardwaarde van -1.

[ @buffer_count = ] 'buffer_count'

Het totale aantal buffers dat wordt gebruikt door de back-up- of herstelbewerking. @buffer_count is int met een standaardwaarde van -1.

[ @max_transfer_size = ] 'max_transfer_size'

De grootte, in bytes, van het maximale invoer- of uitvoerverzoek dat door SQL Server aan het back-upapparaat wordt gestuurd. @max_transfersize is int en kan .NULL

[ @restore_threshold = ] 'restore_threshold'

Het aantal minuten dat is toegestaan tussen herstelbewerkingen voordat er een waarschuwing wordt gegenereerd. @restore_threshold is int en kan niet .NULL

[ @threshold_alert = ] 'threshold_alert'

De waarschuwing die moet worden gegenereerd wanneer de drempelwaarde voor de back-up wordt overschreden. @threshold_alert is int, met een standaardwaarde van 14.420.

[ @threshold_alert_enabled = ] 'threshold_alert_enabled'

Geeft aan of een waarschuwing wordt geactiveerd wanneer @restore_threshold wordt overschreden. Een waarde van 1 (de standaard) betekent dat de waarschuwing wordt geactiveerd. @threshold_alert_enabled is gebeten.

[ @history_retention_period = ] '@history_retention_period'

De tijdsduur in minuten waarin de geschiedenis wordt bewaard. @history_retention_period is int, met een standaardwaarde van NULL. Er wordt een waarde van 14420 gebruikt als er geen is opgegeven.

Codewaarden retourneren

0 (geslaagd) of 1 (mislukt).

Resultaatset

Geen.

Opmerkingen

sp_add_log_shipping_secondary_database moet worden uitgevoerd vanuit de master database op de secundaire server. Deze opgeslagen procedure doet het volgende:

  1. sp_add_log_shipping_secondary_primary moet vóór deze opgeslagen procedure worden aangeroepen om de primaire logverzenddatabase-informatie op de secundaire server te initialiseren.

  2. Voegt een vermelding toe voor de secundaire database in log_shipping_secondary_databases met behulp van de geleverde argumenten.

  3. Voegt een lokaal monitorrecord log_shipping_monitor_secondary toe op de secundaire server met behulp van de geleverde argumenten.

  4. Als de monitorserver verschilt van de secundaire server, sp_add_log_shipping_secondary_database voegt hij een monitorrecord toe log_shipping_monitor_secondary op de monitorserver met behulp van de geleverde argumenten.

Permissions

Alleen leden van de vaste serverrol sysadmin kunnen deze procedure uitvoeren.

Voorbeelden

Dit voorbeeld illustreert het gebruik van de sp_add_log_shipping_secondary_database stored procedure om de database LogShipAdventureWorks toe te voegen als secundaire database in een log shipping-configuratie, waarbij de primaire database AdventureWorks2025 zich op de primaire server TRIBECAbevindt.

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