Udostępnij za pośrednictwem


Jak działa replikacja migawka

Domyślnie korzystają z wszystkich trzech rodzajów replikacja migawka zainicjować subskrybentów.The SQL Server migawka Agent always generates the migawka files, but the agent that delivers the files differs depending on the type of replikacja being used. migawka replikacja i replikacja transakcyjnej wykorzystywanie Agent dystrybucji do tworzenia plików, zastosowań replikacja łączenia SQL Server Scalanie agenta. migawka agent działa z szybkością dystrybutor.Agent dystrybucji i scalanie Agent uruchamiane na dystrybutor dla subskrypcji wypychanych lub na subskrybenci subskrypcji ściąganej.Aby uzyskać więcej informacji na temat subskrypcji ściągać i wypychanie zobacz Subskrybowanie publikacji. Aby uzyskać więcej informacji na temat agentów zobacz Przegląd czynników replikacja.

Migawki mogą być generowane i zastosowane natychmiast po utworzeniu subskrypcja lub zgodnie z harmonogramem na czas tworzona jest publikacja.migawka Agent przygotowuje migawkę plików zawierających schemat oraz dane z opublikowanych tabel i obiektów bazy danych, przechowuje pliki w folderze migawka Wydawca i rejestruje informacje o śledzeniu w baza danych dystrybutor dystrybutor.Podczas konfigurowania dystrybutor, ale można określić lokalizacji alternatywnej dla publikacja oprócz domyślnego lub zamiast na określeniu domyślnego folderu migawka.Aby uzyskać więcej informacji zobacz Alternatywnej lokalizacji folderu migawka.

Uwaga

Oprócz procesu standardowych migawka opisana w tym temacie proces dwóch części migawka jest używany w przypadku publikacji korespondencji seryjnej z filtrami sparametryzowana.Aby uzyskać więcej informacji zobacz Migawki publikacji korespondencji seryjnej z filtrami sparametryzowana.

Na poniższej ilustracji pokazano główne składniki replikacja migawka.

Snapshot replication components and data flow

Agent migawka

Do replikacja scalania, generowany jest migawka co czas działa migawka Agent.Dla replikacja transakcyjnej generowania migawka zależy od ustawienia właściwość publikacja immediate_sync.Jeśli właściwość jest zestaw na PRAWDA (domyślnie podczas korzystania z Kreatora nowych publikacja), migawka jest generowany za każdym razem działa agent zdjęcie, a mogą być stosowane do abonenta w dowolnym momencie.Jeśli właściwość jest ustawiona na wartość FALSE (wartość domyślna podczas korzystania z sp_addpublication), migawka jest generowany tylko wtedy, gdy dodano nową subskrypcję od czasu ostatniego uruchomić agenta migawka; subskrybentów musi czekać na Agent migawek na ukończenie te mogą być synchronizowane.

migawka Agent wykonuje następujące czynności:

  1. Ustanawia połączenie dystrybutor Wydawca, a następnie przyjmuje blokad opublikowanych tabel w razie potrzeby:

    • migawka Agent dla publikacji korespondencji seryjnej nie podejmie wszystkie blokady.

    • Dla transakcyjnych publikacji domyślnie migawka Agent podjąć blokad tylko podczas fazy wstępnej generacji migawka.

    • Dla publikacji migawka blokady przechowywane są w trakcie generowania migawkę całego.

  2. Zapisuje kopię schematu tabela dla każdego artykuł pliku .sch.Jeśli pozostałe obiekty bazy danych są publikowane, na przykład indeksy, ograniczenia, procedury przechowywane, widoki, funkcje zdefiniowane przez użytkownika i tak dalej, pliki skryptów dodatkowe są generowane.

  3. Kopiuje dane z tabela opublikowanego przez wydawcę, a następnie zapisuje dane do folderu migawka.Migawka zostanie wygenerowany jako zestaw plików programów (BCP) kopiowanie masowe.

  4. migawka i publikacje transakcyjnych, migawka Agent dołącza wiersze, które mają zostać MSrepl_commands and MSrepl_transactions tabele w baza danych dystrybucji.Wpisy w MSrepl_commands tabela są polecenia wskazującą lokalizację plików .sch i .bcp, inne pliki migawka i odwołania do wszelkich przed lub post-migawka skryptów.Wpisy w MSrepl_transactions tabela są polecenia dotyczące synchronizowania subskrybent.

    Dla publikacji seryjnej migawka Agent wykonuje dodatkowe kroki.Aby uzyskać więcej informacji zobacz W jaki sposób scalania replikacja inicjuje publikacje i subskrypcje.

  5. Zwalnia wszystkie blokady opublikowanych tabel.

Podczas generowania migawka opublikowanych tabel nie można wprowadzać zmian w schemacie.Po wygenerowaniu pliki migawka, można je przeglądać w folderze migawka za pomocą Eksploratora Windows.

Rozkład agenta i agenta korespondencji seryjnej

Dla publikacja migawka każdego uruchomienia agenta dystrybucji w publikacja go przenosi nowy migawkę każdego subskrybent, które nie zostało jeszcze zsynchronizowane, została oznaczona do reinicjowanie lub zawiera nowe artykuły.

migawka i replikacja transakcyjnej Agent dystrybucji wykonuje następujące czynności:

  1. Ustanawia połączenie do dystrybutor.

  2. Sprawdza, czy MSrepl_commands and MSrepl_transactions tabel w bazie danych dystrybutor dystrybutor.Agent odczytuje lokalizację plików migawka z pierwszej tabela i subskrybent synchronizacji polecenia z obu tabel.

  3. Dotyczy poleceń i schematu baza danych subskrypcja.

Do publikacja seryjnej niefiltrowanym replikacja Agent seryjna wykonuje następujące czynności:

  1. Ustanawia połączenie z Wydawca.

  2. Sprawdza, czy sysmergeschemachange tabela na Wydawca i określa, czy jest nowa migawkę stosowanej przez subskrybent.

  3. Jeśli dostępne jest nowe migawka, Agent Scal dotyczą baza danych subskrypcja migawkę plików z lokalizacji określonej w polu sysmergeschemachange.