Udostępnij za pośrednictwem


W jaki sposób replikacja łączenia zarządza wygaśnięcia subskrypcja i czyszczenie metadane

Subskrypcja do publikacja seryjnej wygasa, jeśli go nie ma zsynchronizowane z programem Wydawca w okres przechowywania publikacja.Domyślny okres zachowywania jest 14 dni, zestaw przy użyciu @ przechowywania and @ retention_period_unit parametrówsp_addmergepublication (języka Transact-SQL). The @retention_period_unit requires the publikacja compatibility poziom to be 90RTM or higher.For Subscribers running previous versions of Microsoft SQL Server, @retention_period_unit is always set to 'day'.Aby uzyskać więcej informacji na temat poziom zgodności zobacz sekcję "Poziom zgodności dla publikacji korespondencji seryjnej" w temacie Using Multiple Versions of SQL Server in a Replication Topology.

Ustawienie ponownie po przekroczeniu limitu subskrypcja go muszą być inicjowane, ponieważ metadane subskrypcja są usuwane (zobacz sekcję "Oczyszczanie metadanych" w tym temacie, aby uzyskać więcej informacji).Subskrypcje, ustawienie nie są ponownie inicjowane są usuwane przez to zadanie oczyszczania przeterminowanych subskrypcja w Wydawca.Domyślnie to zadanie jest uruchamiane codziennie, powoduje to usunięcie wszystkich subskrypcji wypychanych, które nie zostały zsynchronizowane dla podwójne długość okresu przechowywania publikacja.Na przykład:

  • Jeśli publikacja ma okres zachowywania 14 dni, subskrypcja mogą wygasać, jeśli nie ma on zsynchronizowany w ciągu 14 dni.

    Jeśli wydawca jest uruchomiony. SQL Server 2005 lub jego nowszej wersja i agenta dla subskrypcji jest z SQL Server 2005 lub nowszej wersja, subskrypcja wygaśnie tylko jeśli zostały zmiany do danych z partycji tej subskrypcji. Na przykład załóżmy, że subskrybent odbiera dane o klientach tylko dla klientów z Niemiec.Jeśli okres zachowywania wynosi zestaw 14 dni, subskrypcja wygaśnie w dniu 14 tylko wtedy, gdy nastąpiły zmiany w danych odbiorcy niemieckim w ciągu ostatnich 14 dni.

  • Ustawienie ponownie z 14 dni do 27 dni po ostatniej synchronizacji subskrypcja mogą być inicjowane.

  • 28 Dni po ostatniej synchronizacji subskrypcja zostanie usunięte przez zadanie oczyszczania subskrypcja wygasła.Jeśli subskrypcji wypychanej wygaśnie, jest całkowicie usuwany, ale ściągać subskrypcji nie są.Należy oczyścić subskrypcji ściąganej przez subskrybent.Aby uzyskać więcej informacji zobacz Jak Usuwanie subskrypcja wciągana (Programowanie replikacja języka Transact-SQL).

Uwagi dotyczące Ustawianie okres przechowywania publikacja

Podczas ustawiania okres zachowywania dla publikacji korespondencji seryjnej, należy pamiętać o następujących czynności:

  • Oczyszczanie metadane replikacja łączenia zależy okres przechowywania publikacja:

    • Replikacja nie może wyczyścić metadane w publikacja i subskrypcja bazy danych aż do osiągnięcia okres zachowywania.Należy zachować ostrożność określając dużą wartość dla okresu przechowywania, ponieważ negatywnie może jej wpływ na wydajność replikacja.Zaleca się korzystanie z niższej ustawienie Jeśli niezawodnie można przewidzieć synchronizację wszystkich subskrybentów regularnie w tym okresie czas.

    • Istnieje możliwość określenia subskrypcji nigdy nie wygasa (wartość 0 dla @ przechowywania), ale zaleca się używania tej wartości, ponieważ nie można oczyścić metadane.

  • Okres zachowywania dla wszelkich republikator musi być ustawiona na wartość równą lub mniejszą niż okres zachowywania Ustaw oryginalnego wydawca.Jeśli używasz partnerów do synchronizacji alternatywne, należy używać takich samych wartościach przechowywania publikacja wydawcy i wszystkich partnerów do synchronizacji alternatywnego.Przy użyciu różnych wartości może prowadzić do innych niż zbieżności.Jeśli trzeba zmienić wartość przechowywania publikacja, ponownie zainicjować subskrybent w celu uniknięcia nie zbieżności danych.

  • Jeśli po czystej zapasowe, zwiększa się okres przechowywania publikacja i subskrypcja próbuje połączyć się z wydawcą (która już została usunięta metadane), subskrypcja nie wygaśnie z powodu zwiększenie przechowywania wartości.Wydawca nie ma wystarczającej ilości metadane pobierania zmian do abonenta, które prowadzi do innej niż zbieżności.

Czyszczenie metadane

Czyszczenie metadane w replikacja łączenia jest wykonywane przez procedura przechowywana sp_mergemetadataretentioncleanup (Transact-SQL); w czasie oczyszczania opiera się na okres przechowywania publikacja. Za każdym razem dla subskrypcja jest uruchomiony agent korespondencji seryjnej, wywołuje procedurę czyszczenia.Procedura usuwa metadane starsze niż okres przechowywania publikacja z następujących tabele systemowe:

Tabele te są używane przez wszystkie publikacje w bazie danych publikacja: Jeśli istnieje więcej niż jedną publikacja, najdłuższego okres zachowywania jest zawsze używana do określenia usunięcie metadane.