共用方式為


sp_add_log_shipping_primary_database (Transact-SQL)

設定記錄傳送組態的主要資料庫,其中包括備份作業、本機監視記錄,以及遠端監視記錄。

主題連結圖示Transact-SQL 語法慣例

語法

sp_add_log_shipping_primary_database [ @database = ] 'database', 
[ @backup_directory = ] 'backup_directory', 
[ @backup_share = ] 'backup_share', 
[ @backup_job_name = ] 'backup_job_name'
[, [ @backup_retention_period = ] backup_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']
[, [ @backup_threshold = ] backup_threshold ] 
[, [ @threshold_alert = ] threshold_alert ] 
[, [ @threshold_alert_enabled = ] threshold_alert_enabled ] 
[, [ @history_retention_period = ] history_retention_period ]
[, [ @backup_job_id = ] backup_job_id OUTPUT ]
[, [ @primary_id = ] primary_id OUTPUT]
            

引數

  • [ @database = ] 'database'
    這是記錄傳送主要資料庫的名稱。databasesysname,沒有預設值,且不能是 NULL。
  • [ @backup_directory = ] 'backup_directory'
    這是主要伺服器備份資料夾的路徑。backup_directorynvarchar(500),沒有預設值,不能是 NULL。
  • [ @backup_share = ] 'backup_share'
    是主要伺服器備份目錄的網路路徑。backup_sharenvarchar(500),沒有預設值,不能是 NULL。
  • [ @backup_job_name = ] 'backup_job_name'
    這是將備份複製到備份資料夾之主要伺服器中的 SQL Server Agent 作業名稱。backup_job_namesysname,不能是 NULL。
  • [ @backup_retention_period = ] backup_retention_period
    這是將記錄備份檔儲存在主要伺服器備份目錄中的時間長度 (以分鐘為單位)。backup_retention_periodint,沒有預設值,而且不能是 NULL。
  • [ @monitor_server = ] 'monitor_server'
    這是監視伺服器的名稱。Monitor_serversysname,沒有預設值,不能是 NULL。
  • [ @monitor_server_security_mode = ] monitor_server_security_mode
    用來連接到監視伺服器的安全性模式。

    1 = Microsoft Windows 驗證。

    0 = Microsoft SQL Server 驗證。monitor_server_security_modebit,不能是 NULL。

  • [ @monitor_server_login = ] 'monitor_server_login'
    這是用來存取監視伺服器之帳戶的使用者名稱。
  • [ @monitor_server_password = ] 'monitor_server_password'
    這是用來存取監視伺服器之帳戶的密碼。
  • [ @backup_threshold = ] backup_threshold
    這是前次備份之後到產生 threshold_alert 錯誤之前的時間長度 (以分鐘為單位)。backup_thresholdint,預設值是 60 分。
  • [ @threshold_alert = ] threshold_alert
    這是在超出備份臨界值時,所產生的警示。threshold_alertint,預設值是 14,420。
  • [ @threshold_alert_enabled = ] threshold_alert_enabled
    指定在超出 backup_threshold 時,是否產生警示。預設值 1 表示將產生警示。threshold_alert_enabledbit
  • [ @history_retention_period = ] history_retention_period
    這是保留歷程記錄的時間長度 (以分鐘為單位)。history_retention_periodint,預設值是 NULL。若未指定,則使用 14420。
  • [ @backup_job_id = ] backup_job_id OUTPUT
    主要伺服器的備份作業之相關 SQL Server Agent 作業識別碼。backup_job_iduniqueidentifier,不能是 NULL。
  • [ @primary_id = ] primary_id OUTPUT
    記錄傳送組態之主要資料庫的識別碼。primary_iduniqueidentifier,不能是 NULL。

傳回碼值

0 (成功) 或 1 (失敗)

結果集

備註

sp_add_log_shipping_primary_database 必須從主要伺服器的 master 資料庫中執行。這個預存程序會執行下列功能:

  1. 利用提供的引數,在 log_shipping_primary_databases 資料表中,產生主要識別碼和加入主要資料庫的項目。
  2. 建立停用的主要資料庫的備份作業。
  3. log_shipping_primary_databases 項目中的備份作業識別碼設為備份作業的作業識別碼。
  4. 利用提供的引數,在主要伺服器的 log_shipping_monitor_primary 資料表中,加入本機監視記錄。
  5. 如果監視伺服器不是主要伺服器,請利用提供的引數,在監視伺服器的 log_shipping_monitor_primary 中,加入一項監視記錄。

權限

只有系統管理員 (sysadmin) 固定伺服器角色的成員,才能夠執行這個程序。

範例

這個範例會在記錄傳送組態中,加入 AdventureWorks 資料庫來作為主要資料庫。

DECLARE @LS_BackupJobId AS uniqueidentifier 
DECLARE @LS_PrimaryId AS uniqueidentifier 

EXEC master.dbo.sp_add_log_shipping_primary_database 
@database = N'AdventureWorks' 
,@backup_directory = N'c:\lsbackup' 
,@backup_share = N'\\tribeca\lsbackup' 
,@backup_job_name = N'LSBackup_AdventureWorks' 
,@backup_retention_period = 1440
,@monitor_server = N'rockaway' 
,@monitor_server_security_mode = 1 
,@backup_threshold = 60 
,@threshold_alert = 0 
,@threshold_alert_enabled = 0 
,@history_retention_period = 1440 
,@backup_job_id = @LS_BackupJobId OUTPUT 
,@primary_id = @LS_PrimaryId OUTPUT 
,@overwrite = 1 
GO

請參閱

參考

系統預存程序 (Transact-SQL)

其他資源

記錄傳送
記錄傳送資料表與預存程序

說明及資訊

取得 SQL Server 2005 協助