適用於: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 為 intNULL。 預設值為 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為 intNULL。
[ @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為 intNULL。 如果未指定任何值,則會使用 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 新增為輔助資料庫,而主資料庫 AdventureWorks2025 位於主伺服器上 TRIBECA。
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