sp_changepublication_snapshot (Transact-SQL)
變更指定發行集的快照集代理程式屬性。這個預存程序執行於發行集資料庫的發行者端。
安全性注意事項 |
---|
當利用遠端散發者來設定發行者時,提供給所有參數的值 (包括 job_login 和 job_password) 都會以純文字的方式傳給散發者。您應該先加密「發行者」及其遠端「散發者」之間的連接,再執行這個預存程序。如需詳細資訊,請參閱<加密 SQL Server 的連接>。 |
語法
sp_changepublication_snapshot [ @publication= ] 'publication'
[ , [ @frequency_type= ] frequency_type ]
[ , [ @frequency_interval= ] frequency_interval ]
[ , [ @frequency_subday= ] frequency_subday ]
[ , [ @frequency_subday_interval= ] frequency_subday_interval ]
[ , [ @frequency_relative_interval= ] frequency_relative_interval ]
[ , [ @frequency_recurrence_factor= ] frequency_recurrence_factor ]
[ , [ @active_start_date= ] active_start_date ]
[ , [ @active_end_date= ] active_end_date ]
[ , [ @active_start_time_of_day= ] active_start_time_of_day ]
[ , [ @active_end_time_of_day= ] active_end_time_of_day ]
[ , [ @snapshot_job_name = ] 'snapshot_agent_name' ]
[ , [ @publisher_security_mode = ] publisher_security_mode ]
[ , [ @publisher_login = ] 'publisher_login' ]
[ , [ @publisher_password = ] 'publisher_password' ]
[ , [ @job_login = ] 'job_login' ]
[ , [ @job_password = ] 'job_password' ]
[ , [ @publisher = ] 'publisher' ]
引數
[ [ @publication =] 'publication'
這是發行集的名稱。publication 是 sysname,沒有預設值。[ [ @frequency_type =] frequency_type
這是代理程式的排程頻率。frequency_type 是 int,它可以是下列值之一。值
描述
1
一次
2
視需要
4
每日
8
每週
16
每月
32
每月相對
64
自動啟動
128
重複執行
NULL (預設值)
[ [ @frequency_interval =] frequency_interval
指定代理程式執行的天數。frequency_interval 是 int,而且可以是下列其中一個值。值
描述
1
星期日
2
星期一
3
星期二
4
星期三
5
星期四
6
星期五
7
星期六
8
日
9
工作日
10
週末
NULL (預設值)
[ [ @frequency_subday =] frequency_subday
這是 freq_subday_interval 的單位。frequency_subday 是 int,而且可以是下列其中一個值。值
描述
1
一次
2
秒
4
分鐘
8
小時
NULL (預設值)
[ [ @frequency_subday_interval =] frequency_subday_interval
這是 frequency_subday 的間隔。frequency_subday_interval 是 int,預設值是 NULL。[ [ @frequency_relative_interval =] frequency_relative_interval
這是快照集代理程式的執行日期。frequency_relative_interval 是 int,預設值是 NULL。[ [ @frequency_recurrence_factor =] frequency_recurrence_factor
這是 frequency_type 所使用的循環因數。frequency_recurrence_factor 是 int,預設值是 NULL。[ [ @active_start_date =] active_start_date
這是第一次排程快照集代理程式的日期,格式為 YYYYMMDD。active_start_date 是 int,預設值是 NULL。[ [ @active_end_date =] active_end_date
這是排程停止快照集代理程式的日期,格式為 YYYYMMDD。active_end_date 是 int,預設值是 NULL。[ [ @active_start_time_of_day =] active_start_time_of_day
這是第一次排程快照集代理程式的當日時間,格式為 HHMMSS。active_start_time_of_day 是 int,預設值是 NULL[ [ @active_end_time_of_day =] active_end_time_of_day
這是排程停止快照集代理程式的當日時間,格式為 HHMMSS。active_end_time_of_day 是 int,預設值為 NULL。[ [ @snapshot_job_name = ] 'snapshot_agent_name'
這是在使用現有作業時,現有快照集代理程式作業的名稱。snapshot_agent_name 是 nvarchar(100),預設值是 NULL。[ [ @publisher_security_mode = ] publisher_security_mode
這是連接到發行者時,代理程式所用的安全性模式。publisher_security_mode 是 smallint,預設值是 NULL。0 會指定 SQL Server 驗證,1 則指定 Windows 驗證。非 SQL Server 發行者必須指定 0 值。安全性注意事項 盡可能使用 Windows 驗證。
[ [ @publisher_login = ] 'publisher_login'
這是連接到發行者時所用的登入。publisher_login 是 sysname,預設值是 NULL。當 publisher_security_mode 是 0 時,必須指定 publisher_login。如果 publisher_login 是 NULL,而且 publisher_security_mode 是 1,當連接到發行者時,就會使用 job_login 中所指定的 Windows 帳戶。[ [ @publisher_password = ] 'publisher_password'
這是連接到發行者時所用的密碼。publisher_password 是 sysname,預設值是 NULL。安全性注意事項 請勿使用空白密碼。請使用增強式密碼。可能的話,系統會在執行階段提示使用者輸入安全性認證。如果您必須將認證儲存在指令碼檔案中,則必須維護這個檔案的安全性,使他人無法在未獲授權的情況下擅自存取。
[ [ @job_login = ] 'job_login'
這是執行代理程式之 Windows 帳戶的登入。job_login 是 nvarchar(257),預設值是 NULL。通往散發者的代理程式連接一律使用這個 Windows 帳戶。您必須在建立新的快照集代理程式作業時,提供這個參數。您無法針對非 SQL Server 發行者變更這個項目。[ [ @job_password = ] 'job_password'
這是執行代理程式之 Windows 帳戶的密碼。job_password 是 sysname,預設值是 NULL。您必須在建立新的快照集代理程式作業時,提供這個參數。安全性注意事項 可能的話,會在執行階段提示使用者輸入安全性認證。如果您必須將認證儲存在指令碼檔案中,則必須維護這個檔案的安全性,使他人無法在未獲授權的情況下擅自存取。
[ [ @publisher = ] 'publisher'
指定非 SQL Server 發行者。publisher 是 sysname,預設值是 NULL。[!附註]
當在 SQL Server 發行者端建立快照集代理程式時,不應使用 publisher。
傳回碼值
0 (成功) 或 1 (失敗)
備註
sp_changepublication_snapshot 用於照集複寫、交易式複寫和合併式複寫中。
權限
只有系統管理員 (sysadmin) 固定伺服器角色和 db_owner 固定資料庫角色的成員,才能夠執行 sp_changepublication_snapshot。