Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Zmienia właściwości publikacji scalającej. Ta procedura składowana jest wykonywana w programie Publisher w bazie danych publikacji.
Transact-SQL konwencje składni
Składnia
sys.sp_changemergepublication
[ @publication = ] N'publication'
[ , [ @property = ] N'property' ]
[ , [ @value = ] N'value' ]
[ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]
[ , [ @force_reinit_subscription = ] force_reinit_subscription ]
[ ; ]
Arguments
[ @publication = ] N'publikacja'
Nazwa publikacji. @publication to sysname, bez domyślnego zapisu.
[ @property = ] N'property'
Właściwość do zmiany dla danej publikacji. @property to sysname i może być jedną z wartości wymienionych w poniższej tabeli.
[ @value = ] N'value'
Nowa wartość dla określonej nieruchomości.
@value to nvarchar(255), z wartością domyślną NULL.
, i może być jedną z wartości wymienionych w poniższej tabeli.
Ta tabela opisuje właściwości publikacji, które można zmienić, oraz ograniczenia dotyczące wartości tych właściwości.
| Property | Value | Opis |
|---|---|---|
allow_anonymous |
true |
Anonimowe subskrypcje są dozwolone. |
false |
Anonimowe subskrypcje nie są dozwolone. | |
allow_partition_realignment |
true |
Usuwania są wysyłane do abonenta, aby odzwierciedlić wyniki zmiany partycji poprzez usunięcie danych, które nie są już częścią partycji abonenta. Jest to zachowanie domyślne. |
false |
Dane ze starej partycji pozostają na Subskrybentze, podczas gdy zmiany dokonane w tych danych na Publisher nie replikują się do tego Abonenta. Zamiast tego zmiany wprowadzone na Subskrybentze replikują się do Publisher. Jest to używane do przechowywania danych w subskrypcji ze starej partycji, gdy dane muszą być dostępne do celów historycznych. | |
allow_pull |
true |
Dla danego wydawnictwa dozwolone są subskrypcje pull. |
false |
Subskrypcje pull nie są dozwolone dla danego wydawnictwa. | |
allow_push |
true |
Subskrypcje push są dozwolone dla danego wydawnictwa. |
false |
Subskrypcje push nie są dozwolone dla danego wydawnictwa. | |
allow_subscriber_initiated_snapshot |
true |
Subskrybent może rozpocząć proces snapshot. |
false |
Subskrybent nie może zainicjować procesu snapshot. | |
allow_subscription_copy |
true |
Możesz skopiować bazy subskrypcji subskrybujące tę publikację. |
false |
Nie możesz kopiować baz danych subskrypcji, które subskrybują tę publikację. | |
allow_synctoalternate |
true |
Pozwala alternatywnemu partnerowi synchronizacyjnemu synchronizować się z tym Publisher. |
false |
Nie pozwala alternatywnemu partnerowi synchronizacji z tym Publisher. | |
allow_web_synchronization |
true |
Subskrypcje mogą być synchronizowane przez HTTPS. |
false |
Subskrypcji nie da się zsynchronizować przez HTTPS. | |
alt_snapshot_folder |
Określa lokalizację alternatywnego folderu dla migawki. | |
automatic_reinitialization_policy |
1 |
Zmiany są przesyłane przez Subskrybenta przed ponownym uruchomieniem subskrypcji. |
0 |
Subskrypcja jest ponownie inicjalizowana bez wcześniejszego przesyłania zmian. | |
centralized_conflicts |
true |
Wszystkie zapisy konfliktów są przechowywane w Publisher. Jeśli zmienisz tę właściwość, istniejący subskrybenci muszą zostać ponownie zainicjalizowani. |
false |
Rekordy konfliktów są przechowywane na serwerze, który przegrał w rozwiązywaniu konfliktów. Jeśli zmienisz tę właściwość, istniejący subskrybenci muszą zostać ponownie zainicjalizowani. | |
compress_snapshot |
true |
Migawka w alternatywnym folderze snapshotów jest kompresowana do formatu CAB. Migawka w domyślnym folderze snapshotów nie może być skompresowana. Zmiana tej właściwości wymaga nowego snapshota. |
false |
Domyślnie migawka nie jest kompresowana. Zmiana tej właściwości wymaga nowego snapshota. | |
conflict_logging |
publisher |
Akta konfliktów są przechowywane w Publisher. |
subscriber |
Zapisy konfliktów są przechowywane u abonenta, który spowodował konflikt. Nie jest obsługiwane dla subskrybentów SQL Server Compact. | |
both |
Zapisy konfliktów są przechowywane zarówno u Publisher, jak i Subscriber. | |
conflict_retention |
Int określający okres retencji w dniach, na który konflikty są zatrzymywane w czasie. Ustawienie conflict_retention oznacza 0 , że nie jest potrzebne sprzątanie konfliktów. |
|
description |
Opis publikacji. | |
dynamic_filters |
true |
Publikacja jest filtrowana na podstawie klauzuli dynamicznej. |
false |
Publikacja nie jest filtrowana dynamicznie. | |
enabled_for_internet |
true |
Publikacja jest dostępna w Internecie. Protokół transferu plików (FTP) może być używany do przesyłania plików migawek do abonenta. Pliki synchronizacyjne publikacji są umieszczane w katalogu C:\Program Files\Microsoft SQL Server\MSSQL\Repldata\ftp . |
false |
Publikacja nie jest dostępna w Internecie. | |
ftp_address |
Adres sieciowy usługi FTP dla dystrybutora. Określa, gdzie przechowywane są pliki snapshotów publikacji. | |
ftp_login |
Nazwa użytkownika używana do połączenia z usługą FTP. | |
ftp_password |
Hasło użytkownika używane do połączenia z usługą FTP. | |
ftp_port |
Numer portu usługi FTP dla dystrybutora. Określa numer portu TCP dla strony FTP, w której przechowywane są pliki snapshotów publikacji. | |
ftp_subdirectory |
Określa, gdzie tworzone są pliki snapshotów, jeśli publikacja obsługuje propagację snapshotów za pomocą FTP. | |
generation_leveling_threshold |
int | Określa liczbę zmian zawartych w pokoleniu. Pokolenie to zbiór zmian, które są przekazywane Publisher lub Subskrybentowi. |
keep_partition_changes |
true |
Synchronizacja jest zoptymalizowana i dotknięci są tylko subskrybenci, którzy mają wiersze w zmienionych partycjach. Zmiana tej właściwości wymaga nowego snapshota. |
false |
Synchronizacja nie jest zoptymalizowana, a partycje wysyłane do subskrybentów są weryfikowane, gdy dane zmieniają się w partycji. Zmiana tej właściwości wymaga nowego snapshota. | |
max_concurrent_merge |
Int reprezentujący maksymalną liczbę współbieżnych procesów scalania, które można uruchomić na publikacji. Jeśli 0, nie ma limitu. Jeśli więcej niż ta liczba procesów scalania jest zaplanowanych do jednoczesnego uruchomienia, nadmiar zadań trafia do kolejki do czasu zakończenia procesu currentlmerge. | |
max_concurrent_dynamic_snapshots |
Int reprezentujący maksymalną liczbę sesji snapshotów do wygenerowania filtrowanego snapshota, który może jednocześnie działać na publikacji merge wykorzystującej parametryzowane filtry wierszowe. Jeśli 0, nie ma limitu. Jeśli więcej niż ta liczba procesów snapshotów jest zaplanowanych do jednoczesnego uruchomienia, nadmiar zadań trafia do kolejki do czasu zakończenia bieżącego procesu scalania. |
|
post_snapshot_script |
Określa wskaźnik do .sql lokalizacji pliku. Distribution Agent lub Merge Agent uruchamia skrypt post-snapshot po zastosowaniu wszystkich pozostałych replikowanych skryptów obiektów i danych podczas początkowej synchronizacji. Zmiana tej właściwości wymaga nowego snapshota. |
|
pre_snapshot_script |
Określa wskaźnik do .sql lokalizacji pliku. Merge Agent uruchamia skrypt pre-snapshot przed dowolnym skryptem replikowanych obiektów podczas stosowania snapshotu do subskrybenta. Zmiana tej właściwości wymaga nowego snapshota. |
|
publication_compatibility_level |
100RTM |
SQL Server 2008 (10.0.x) |
90RTM |
SQL Server 2005 (9.x) | |
publish_to_activedirectory |
true |
Ten parametr jest wycofany i zachowany ze względu na kompatybilność wsteczną skryptów. Nie można już dodawać informacji o publikacji do Active Directory. |
false |
Usuwa informacje o publikacji z Active Directory. | |
replicate_ddl |
1 |
Instrukcje Data Definition Language (DDL) wykonywane w Publisher są replikowane. |
0 |
Instrukcje DDL nie są replikowane. | |
retention |
Int reprezentujący liczbę jednostek, dla których retention_period_unit należy zapisywać zmiany dla danej publikacji. Jeśli subskrypcja nie jest zsynchronizowana w okresie retencyjnym, a oczekujące zmiany zostały usunięte przez operację sprzątania u dystrybutora, subskrypcja wygasa i musi zostać ponownie zainicjalizowana. Maksymalny dopuszczalny okres przechowywania to liczba dni między 31 grudnia 9999 a aktualną datą.Uwaga: Okres przechowywania publikacji połączonych z połączeniem obejmuje 24-godzinny okres karencji, aby dostosować się do subskrybentów w różnych strefach czasowych. |
|
retention_period_unit |
day |
Okres retencji określany jest w dniach. |
week |
Okres retencji określany jest w tygodniach. | |
month |
Okres retencji określany jest w miesiącach. | |
year |
Okres retencji określany jest w latach. | |
snapshot_in_defaultfolder |
true |
Pliki snapshotów są przechowywane w domyślnym folderze snapshotów. |
false |
Pliki migawkowe są przechowywane w alternatywnym miejscu określonym przez alt_snapshot_folder. To połączenie określa, że pliki migawki są przechowywane zarówno w domyślnej, jak i alternatywnej lokalizacji. |
|
snapshot_ready |
true |
Dostępne są zdjęcia z publikacji. |
false |
Migawka do publikacji nie jest dostępna. | |
status |
active |
Publikacja jest w stanie aktywnym. |
inactive |
Publikacja jest w stanie nieaktywnym. | |
sync_mode |
native lubbcp native |
Do początkowego snapshotu używa się natywnego trybu kopiowania wszystkich tabel w trybie natywnym. |
characterlub bcp character |
Dla początkowego snapshotu używa się kopiowania wszystkich tabel w trybie znakowym typu bulk-kopia, co jest wymagane dla wszystkich subskrybentów spoza SQL Server. | |
use_partition_groupsUwaga: Po użyciu grup partycji, jeśli wrócisz do używania setupbelongs, i ustawisz use_partition_groups=false w changemergearticle, może to nie być poprawnie odzwierciedlone po wykonaniu snapshota. Wyzwalacze generowane przez snapshot są zgodne z grupami partycji.Obejściem tego scenariusza jest ustawienie statusu na Nieaktywny, modyfikacja , use_partition_groupsa następnie ustawienie statusu na Aktywny. |
true |
Publikacja wykorzystuje precompultowane partycje. |
false |
Publikacja nie korzysta z precompulowanych partycji. | |
validate_subscriber_info |
Lista funkcji używanych do pobierania informacji o subskrybentach. Następnie weryfikuje kryteria filtrowania dynamicznego użyte przez abonenta, aby zweryfikować, czy informacje są podzielone na części spójnie. | |
web_synchronization_url |
Domyślna wartość adresu URL Internetu używanego do synchronizacji sieci. | |
NULL (ustawienie domyślne) |
Zwraca listę wspieranych wartości dla @property. |
[ @force_invalidate_snapshot = ] force_invalidate_snapshot
Uznaje, że działanie podjęte przez tę procedurę przechowywaną może unieważnić istniejący migawkę.
@force_invalidate_snapshot jest bitowa z wartością domyślną 0.
0Określa, że zmiana publikacji nie unieważnia snapshota. Jeśli procedura przechowywana wykryje, że zmiana wymaga nowego snapshota, wystąpi błąd i nie zostaną wprowadzone żadne zmiany.1Określa, że zmiana publikacji może unieważnić migawkę. Jeśli istnieją subskrypcje wymagające nowego snapshota, daje się zgodę na oznaczenie istniejącego snapshota jako przestarzałego i wygenerowanie nowego snapshota.
Zobacz sekcję Uwagi dotyczące właściwości, które po zmianie wymagają wygenerowania nowego snapshota.
[ @force_reinit_subscription = ] force_reinit_subscription
Potwierdza, że działanie podjęte przez tę procedurę przechowywaną może wymagać ponownej inicjalizacji istniejących subskrypcji.
@force_reinit_subscription jest bitowa z wartością domyślną 0.
0Określa, że zmiana publikacji nie wymaga ponownej inicjalizacji subskrypcji. Jeśli procedura przechowywana wykryje, że zmiana wymaga ponownej inicjalizacji istniejących subskrypcji, pojawia się błąd i nie wprowadza się żadnych zmian.1Oznacza to, że zmiany w publikacji ponownie inicjalizują istniejące subskrypcje i dają zgodę na ponowną inicjałację subskrypcji.
Zobacz sekcję Uwagi dotyczące właściwości, które po zmianie wymagają ponownej inicjalizacji wszystkich istniejących subskrypcji.
Zwracanie wartości kodu
0 (powodzenie) lub 1 (niepowodzenie).
Remarks
sp_changemergepublication jest stosowany w replikacji scalania.
Zmiana następujących właściwości wymaga wygenerowania nowego migawki. Musisz określić wartość parametru 1@force_invalidate_snapshot .
alt_snapshot_foldercompress_snapshotdynamic_filtersftp_addressftp_loginftp_passwordftp_portftp_subdirectorypost_snapshot_script-
publication_compatibility_level(tylko dla osoby80SP3) pre_snapshot_scriptsnapshot_in_defaultfoldersync_modeuse_partition_groups
Zmiana następujących właściwości wymaga ponownej inicjalizacji istniejących subskrypcji. Musisz określić wartość parametru 1@force_reinit_subscription .
dynamic_filtersvalidate_subscriber_info
Aby wypisać obiekty publikacji w Active Directory za pomocą publish_to_active_directory, obiekt SQL Server musi być już utworzony w Active Directory.
Examples
DECLARE @publication AS sysname;
SET @publication = N'AdvWorksSalesOrdersMerge';
-- Disable DDL replication for the publication.
USE [AdventureWorks2022]
EXEC sp_changemergepublication
@publication = @publication,
@property = N'replicate_ddl',
@value = 0,
@force_invalidate_snapshot = 0,
@force_reinit_subscription = 0;
GO
Permissions
Tylko członkowie roli stałego serwera systemowego lub stałej db_owner stałej bazy danych mogą wykonywać sp_changemergepublication.