更改合并發(fā)布的屬性。此存儲(chǔ)過(guò)程在發(fā)布服務(wù)器的發(fā)布數(shù)據(jù)庫(kù)上執(zhí)行。
sp_changemergepublication [ @publication = ] 'publication'
[ , [ @property = ] 'property' ]
[ , [ @value = ] 'value' ]
[ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]
[ , [ @force_reinit_subscription = ] force_reinit_subscription ]
[@publication =] 'publication'
是發(fā)布名。publication 的數(shù)據(jù)類型為 sysname,沒(méi)有默認(rèn)設(shè)置。
[@property =] 'property'
是要為給定項(xiàng)目更改的屬性。property 的數(shù)據(jù)類型為 sysname,可以是下表所列值之一。
[@value =] 'value'
是用于指定的屬性的新值。value 的數(shù)據(jù)類型為 nvarchar(255),可以是下表所列值之一。
下表描述可以更改的發(fā)布屬性和對(duì)這些屬性值的限制。
屬性 | 值 | 描述 |
---|---|---|
description | 對(duì)發(fā)布的描述。 | |
status | active 或 unsynced | 發(fā)布狀態(tài)。 |
retention | 給定發(fā)布的更改的保存天數(shù)。 | |
sync_mode | native 或 character | 發(fā)布的訂閱服務(wù)器的初始同步模式。如果是 native,則表示生成所有表的本機(jī)模式大容量復(fù)制程序輸出。如果是 character,則表示生成所有表的字符模式大容量復(fù)制程序輸出。非 SQL Server 訂閱服務(wù)器要求使用 character 模式。 |
Allow_push | true 或 false | 給定的發(fā)布允許強(qiáng)制訂閱。 |
Allow_pull | true 或 false | 給定的發(fā)布允許請(qǐng)求訂閱。 |
allow_anonymous | true 或 false | 給定的發(fā)布允許匿名訂閱。 |
enabled_for_internet | true 或 false | 啟用發(fā)布用于 Internet,并指定是否可以通過(guò) FTP 向訂閱服務(wù)器傳輸快照文件。如果是 true,則將發(fā)布的同步文件放入 C:\Program Files\Microsoft SQL Server\MSSQL\Repldata\ftp 目錄中。 |
centalized_conflicts | true 或 false | 如果是 true,則將沖突記錄存儲(chǔ)在給定的發(fā)布服務(wù)器上。如果是 false,則將沖突記錄存儲(chǔ)在檢測(cè)到?jīng)_突的服務(wù)器上,該服務(wù)器既可以是發(fā)布服務(wù)器也可以是訂閱服務(wù)器。 |
snapshot_ready | true 或 false | 可使用用于發(fā)布的快照。 |
snapshot_in_defaultfolder | true 或 false | 指定是否將快照保存在默認(rèn)文件夾中。如果是 true,則可以在默認(rèn)文件夾中找到快照文件。如果是 false,則表示快照文件將存儲(chǔ)在 alt_snapshot_folder 指定的備用位置中。注意該參數(shù)可以為 true,并且在 alt_snapshot_folder 參數(shù)中指定有位置。該組合指定將快照文件同時(shí)存儲(chǔ)在默認(rèn)位置和備用位置。 |
alt_snapshot_folder | 指定快照的備用文件夾的位置。 | |
pre_snapshot_script | 指定指向 .sql 文件位置的指針。pre_snapshot_script 的數(shù)據(jù)類型為 nvarchar(255),默認(rèn)設(shè)置為 NULL。在訂閱服務(wù)器上應(yīng)用快照時(shí),合并代理程序?qū)⒃谶\(yùn)行任何復(fù)制的對(duì)象腳本之前運(yùn)行快照前腳本。 | |
post_snapshot_script | 指定指向 .sql 文件位置的指針。分發(fā)代理程序或合并代理程序?qū)⒃谒衅渌鼜?fù)制的對(duì)象腳本和數(shù)據(jù)已在初始同步過(guò)程中應(yīng)用之后才運(yùn)行快照后腳本。 | |
compress_snapshot | true 或 false | 指定將寫(xiě)入 @alt_snapshot_folder 位置的快照壓縮成 Microsoft® CAB 格式。compress_snapshot 的數(shù)據(jù)類型為 nvarchar(5),默認(rèn)設(shè)置為 FALSE。false 指定不壓縮快照;而 true 指定將壓縮快照。不能壓縮默認(rèn)文件夾中的快照。 |
ftp_address | 是分發(fā)服務(wù)器的 FTP 服務(wù)的網(wǎng)絡(luò)地址。指定存儲(chǔ)發(fā)布快照文件的位置。 | |
ftp_port | 是分發(fā)服務(wù)器的 FTP 服務(wù)的端口號(hào)。指定存儲(chǔ)發(fā)布快照文件的 FTP 站點(diǎn)的 TCP 端口號(hào)。 | |
ftp_subdirectory | 指定在發(fā)布通過(guò)使用 FTP 支持傳播快照時(shí)創(chuàng)建快照文件的位置。 | |
ftp_login | 是連接到 FTP 服務(wù)的用戶名。 | |
ftp_password | 是連接到 FTP 服務(wù)的用戶密碼。 | |
conflict_retention | 指定保留沖突的保持期(以天為單位)。 | |
allow_subscription_copy | true 或 false | 啟用或禁用復(fù)制訂閱此發(fā)布的訂閱數(shù)據(jù)庫(kù)的能力。 |
allow_synctoalternate | true 或 false | 使可選同步伙伴與該發(fā)布服務(wù)器同步。 |
validate_subscriber_info | 列出正用于檢索訂閱服務(wù)器信息的函數(shù),并驗(yàn)證正由訂閱服務(wù)器用于驗(yàn)證信息分區(qū)是否一致的動(dòng)態(tài)篩選準(zhǔn)則。例如,如果 SUSER_SNAME() 用于動(dòng)態(tài)篩選,則該參數(shù)應(yīng)該指定為 @validate_subscriber_info=N'SUSER_SNAME()'。有關(guān)更多信息,請(qǐng)參見(jiàn)驗(yàn)證訂閱服務(wù)器信息。 | |
publish_to_activedirectory | 指定是否將發(fā)布信息發(fā)布到 Microsoft Active Directory™。只有運(yùn)行 Windows® 2000 操作系統(tǒng)的服務(wù)器才能使用該功能。true 值將發(fā)布信息添加到 Microsoft Active Directory。 | |
dynamic_filters | true 或 false | 指定是否在動(dòng)態(tài)子句上篩選發(fā)布。 |
max_concurrent_merge | 最大并發(fā)合并進(jìn)程數(shù)。該屬性的 0 值表示對(duì)在任何給定時(shí)間運(yùn)行的并發(fā)合并進(jìn)程數(shù)沒(méi)有限制。該屬性對(duì)可以同時(shí)在合并發(fā)布上運(yùn)行的并發(fā)合并進(jìn)程數(shù)設(shè)置限制。如果同時(shí)調(diào)度的快照進(jìn)程數(shù)比該值允許運(yùn)行的快照進(jìn)程數(shù)要多,則多出的作業(yè)被放入隊(duì)列中,一直等到當(dāng)前運(yùn)行的合并進(jìn)程結(jié)束。 | |
max_concurrent_dynamic_snapshots | 在合并發(fā)布上可以運(yùn)行的最大并發(fā)動(dòng)態(tài)快照會(huì)話數(shù)。如果為 0,表示對(duì)在任意給定時(shí)間同時(shí)在發(fā)布上運(yùn)行的并發(fā)動(dòng)態(tài)快照會(huì)話數(shù)沒(méi)有限制。該屬性對(duì)可以同時(shí)在合并發(fā)布上運(yùn)行的并發(fā)快照進(jìn)程數(shù)設(shè)置限制。如果同時(shí)調(diào)度的快照進(jìn)程數(shù)比該值允許運(yùn)行的快照進(jìn)程數(shù)要多,則多出的作業(yè)被放入隊(duì)列中,一直等到當(dāng)前運(yùn)行的合并進(jìn)程結(jié)束。 | |
NULL(默認(rèn)值) |
[@force_invalidate_snapshot = ] force_invalidate_snapshot
確認(rèn)此存儲(chǔ)過(guò)程采取的操作可能使現(xiàn)有快照無(wú)效。force_invalidate_snapshot 的數(shù)據(jù)類型為 bit,默認(rèn)設(shè)置為 0。0 指定對(duì)項(xiàng)目的更改不會(huì)導(dǎo)致快照無(wú)效。如果存儲(chǔ)過(guò)程檢測(cè)到更改確實(shí)需要新快照,則會(huì)發(fā)生錯(cuò)誤,且不會(huì)進(jìn)行任何更改。而 1 指定對(duì)發(fā)布所做的更改可能導(dǎo)致快照無(wú)效,而且如果現(xiàn)有訂閱需要新的快照,則值 1 提供適當(dāng)?shù)臋?quán)限,使現(xiàn)有快照被標(biāo)記為廢棄并生成新快照。
[@force_reinit_subscription = ] force_reinit_subscription
確認(rèn)此存儲(chǔ)過(guò)程所采取的操作可能要求重新初始化現(xiàn)有的訂閱。force_reinit_subscription 的數(shù)據(jù)類型為 bit,默認(rèn)設(shè)置為 0。0 指定對(duì)項(xiàng)目的更改不會(huì)導(dǎo)致重新初始化訂閱。如果存儲(chǔ)過(guò)程檢測(cè)到更改需要重新初始化訂閱,則會(huì)發(fā)生錯(cuò)誤,且不會(huì)進(jìn)行任何更改。而 1 指定對(duì)項(xiàng)目的更改將導(dǎo)致重新初始化現(xiàn)有的訂閱,且提供使訂閱重新初始化發(fā)生的權(quán)限。
0(成功)或 1(失?。?/P>
sp_changemergepublication 用于合并復(fù)制。
若要使用 @publish_to_active_directory 參數(shù)列出 Active Directory 的發(fā)布對(duì)象,必須已經(jīng)在 Active Directory 中創(chuàng)建了 SQL Server 對(duì)象。有關(guān)更多信息,請(qǐng)參見(jiàn) Active Directory 服務(wù)。
只有 sysadmin 固定服務(wù)器角色成員或 db_owner 固定數(shù)據(jù)庫(kù)角色成員才能執(zhí)行 sp_changemergepublication。
相關(guān)文章