sp_add_log_shipping_secondary_database (Transact-SQL)
適用於:SQL Server
設定次要資料庫以進行記錄傳送。
語法
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' ]
[ ; ]
引數
[ @secondary_database = ] 'secondary_database'
輔助資料庫的名稱。 @secondary_database為 sysname,沒有預設值。
[ @primary_server = ] 'primary_server'
記錄傳送組態中 SQL Server 資料庫引擎 的主要實例名稱。 @primary_server是 sysname,不能是 NULL
。
[ @primary_database = ] 'primary_database'
主伺服器上的資料庫名稱。 @primary_database為 sysname,沒有預設值。
[ @restore_delay = ] 'restore_delay'
輔助伺服器在還原指定的備份檔之前等候的時間量,以分鐘為單位。 @restore_delay 為 int,且不能為 NULL
。 預設值為 0。
[ @restore_all = ] 'restore_all'
如果設定為 1,當還原作業執行時,輔助伺服器會還原所有可用的事務歷史記錄備份。 否則,它會在還原一個檔案之後停止。 @restore_all位且不能為 NULL
。
[ @restore_mode = ] 'restore_mode'
輔助資料庫的還原模式。
0
:使用 還原記錄檔NORECOVERY
1
:使用 還原記錄檔STANDBY
@restore_mode位且不能為 NULL
。
[ @disconnect_users = ] 'disconnect_users'
如果設定為 1
,則執行還原作業時,用戶會中斷與輔助資料庫的連線。 預設值為 0
。 @disconnect_users位且不能為 NULL
。
[ @block_size = ] 'block_size'
大小,以位元組為單位,用來作為備份裝置的區塊大小。 @block_size為 -1 的預設值為 int。
[ @buffer_count = ] 'buffer_count'
備份或還原作業所使用的緩衝區總數。 @buffer_count為 -1 的預設值為 int。
[ @max_transfer_size = ] 'max_transfer_size'
SQL Server 對備份裝置發出的最大輸入或輸出要求大小,以位元組為單位。 @max_transfersize 為 int 且可以是 NULL
。
[ @restore_threshold = ] 'restore_threshold'
在產生警示之前,允許在還原作業之間經過的分鐘數。 @restore_threshold為 int,不能為 NULL
。
[ @threshold_alert = ] 'threshold_alert'
超過備份閾值時要引發的警示。 @threshold_alert為 int,預設值為 14,420。
[ @threshold_alert_enabled = ] 'threshold_alert_enabled'
指定是否在超過@restore_threshold時引發警示。 值 1
(預設值) 表示會引發警示。 @threshold_alert_enabled為 bit。
[ @history_retention_period = ] '@history_retention_period'
保留歷程記錄的分鐘數長度。 @history_retention_period為 int,預設值為 NULL
。 如果未指定任何值,則會使用 14420 的值。
傳回碼值
0
(成功) 或 1
(失敗)。
結果集
無。
備註
sp_add_log_shipping_secondary_database
必須在輔助伺服器上從 master
資料庫執行。 此預存程式會執行下列動作:
sp_add_log_shipping_secondary_primary
應該在此預存程式之前呼叫,以初始化輔助伺服器上的主要記錄傳送資料庫資訊。使用提供的自變數,在 中
log_shipping_secondary_databases
加入輔助資料庫的專案。使用提供的自變數,在
log_shipping_monitor_secondary
輔助伺服器上新增本機監視器記錄。如果監視伺服器與輔助伺服器不同,
sp_add_log_shipping_secondary_database
請使用提供的自變數,在log_shipping_monitor_secondary
監視伺服器上新增監視記錄。
權限
只有系統管理員固定伺服器角色的成員才能執行此程式。
範例
此範例說明如何使用 sp_add_log_shipping_secondary_database
預存程式,在記錄傳送組態中,將資料庫 LogShipAdventureWorks
新增為輔助資料庫,而主資料庫 AdventureWorks2022
位於主伺服器上 TRIBECA
。
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