Udostępnij za pośrednictwem


Najlepsze rozwiązania dotyczące administrowania replikacją

Dotyczy:programu SQL ServerAzure SQL Managed Instance

Po skonfigurowaniu replikacji ważne jest, aby zrozumieć, jak administrować topologią replikacji. Ten temat zawiera podstawowe wskazówki dotyczące najlepszych rozwiązań w wielu obszarach z linkami do dodatkowych informacji dla każdego obszaru. Oprócz przestrzegania wskazówek dotyczących najlepszych rozwiązań przedstawionych w tym temacie rozważ zapoznanie się z często zadawanymi pytaniami, aby zapoznać się z typowymi pytaniami i problemami: często zadawane pytania dotyczące administratorów replikacji.

Warto podzielić wskazówki dotyczące najlepszych rozwiązań na dwa obszary:

  • Poniższe informacje obejmują najlepsze rozwiązania, które należy zaimplementować dla wszystkich topologii replikacji:

    • Opracowywanie i testowanie strategii tworzenia i przywracania kopii zapasowych.

    • Utwórz skrypt topologii replikacji.

    • Tworzenie progów i alertów.

    • Monitoruj topologię replikacji.

    • W razie potrzeby ustanów punkty odniesienia wydajności i dostosuj replikację.

  • Poniższe informacje obejmują najlepsze rozwiązania, które należy wziąć pod uwagę, ale mogą nie być wymagane dla topologii:

    • Okresowo weryfikuj dane.

    • Dostosowywanie parametrów agenta za pomocą profilów.

    • Dostosuj okresy przechowywania publikacji i dystrybucji.

    • Dowiedz się, jak zmienić właściwości artykułu i publikacji w przypadku zmiany wymagań aplikacji.

    • Dowiedz się, jak wprowadzać zmiany schematu w przypadku zmiany wymagań aplikacji.

Opracowywanie i testowanie strategii tworzenia i przywracania kopii zapasowych

Kopie zapasowe wszystkich baz danych powinny być regularnie tworzone, a możliwość przywracania tych kopii zapasowych powinna być okresowo testowana; replikowane bazy danych nie różnią się. Następujące bazy danych powinny być regularnie tworzone kopie zapasowe:

  • Baza danych publikacji

  • Baza danych dystrybucji

  • Bazy danych subskrypcji

  • bazę danych msdb i bazę danych główna w wydawcy, dystrybutorze oraz u wszystkich subskrybentów

Replikowane bazy danych wymagają szczególnej uwagi w odniesieniu do tworzenia kopii zapasowych i przywracania danych. Aby uzyskać więcej informacji, zobacz Tworzenie kopii zapasowych i przywracanie replikowanych baz danych.

Tworzenie skryptu topologii replikacji

Wszystkie składniki replikacji w topologii powinny być opisywane w skryptach jako część planu odzyskiwania po awarii, a skrypty mogą również służyć do automatyzacji powtarzających się zadań. Skrypt zawiera procedury składowane systemu Transact-SQL niezbędne do zaimplementowania zeskryptowanych składników replikacji, takich jak publikacja lub subskrypcja. Skrypty można utworzyć w kreatorze (takim jak Kreator nowej publikacji) lub w programie Microsoft SQL Server Management Studio po utworzeniu składnika. Skrypt można wyświetlić, zmodyfikować i uruchomić przy użyciu programu SQL Server Management Studio lub sqlcmd. Skrypty mogą być przechowywane z plikami kopii zapasowych, które mają być używane w przypadku ponownej konfiguracji topologii replikacji. Aby uzyskać więcej informacji, zapoznaj się z Scripting Replication.

Składnik należy przepisać, jeśli zostaną wprowadzone jakiekolwiek zmiany właściwości. Jeśli używasz niestandardowych procedur składowanych z replikacją transakcyjną, kopia każdej procedury powinna być przechowywana za pomocą skryptów; kopia powinna zostać zaktualizowana, jeśli procedura ulegnie zmianie (procedury są zwykle aktualizowane z powodu zmian schematu lub zmiany wymagań aplikacji). Aby uzyskać więcej informacji na temat procedur niestandardowych, zobacz Określanie sposobu propagowania zmian w artykułach transakcyjnych.

Ustanów punkty odniesienia wydajności i dostrajanie replikacji w razie potrzeby

Przed skonfigurowaniem replikacji zaleca się zapoznanie się z czynnikami wpływającymi na wydajność replikacji:

  • Sprzęt serwera i sieci

  • Projekt bazy danych

  • Konfiguracja dystrybutora

  • Projekt publikacji i opcje

  • Projektowanie i używanie filtru

  • Opcje subskrypcji

  • Opcje migawki

  • Parametry agenta

  • Konserwacja

Po skonfigurowaniu replikacji zaleca się opracowanie planu bazowego wydajności, co pozwoli określić, jak działa replikacja z obciążeniem typowym dla aplikacji i topologii. Użyj monitora replikacji i monitora systemu, aby określić typowe liczby dla następujących pięciu wymiarów wydajności replikacji:

  • Opóźnienie: czas potrzebny na propagowanie zmiany danych między węzłami w topologii replikacji.

  • Przepustowość: ilość aktywności replikacyjnej (mierzona w poleceniach dostarczanych w określonym okresie), którą system może utrzymać przez długi czas.

  • Współbieżność: liczba procesów replikacji, które mogą działać jednocześnie w systemie.

  • Czas trwania synchronizacji: jak długo trwa ukończenie danej synchronizacji.

  • Użycie zasobów: zasoby sprzętowe i sieciowe używane w wyniku przetwarzania replikacji.

Opóźnienie i przepływność są najbardziej istotne dla replikacji transakcyjnej, ponieważ systemy oparte na replikacji transakcyjnej zwykle wymagają małych opóźnień i wysokiej przepływności. Współbieżność i czas trwania synchronizacji są najbardziej istotne dla replikacji scalania, ponieważ systemy oparte na replikacji scalania często mają dużą liczbę subskrybentów, a program Publisher może mieć znaczną liczbę współbieżnych synchronizacji z tymi subskrybentami.

Po ustanowieniu numerów punktów odniesienia ustaw progi w monitorze replikacji. Aby uzyskać więcej informacji, zobacz Ustawianie progów i ostrzeżeń w monitorze replikacji i Korzystanie z alertów dla zdarzeń agenta replikacji. Jeśli wystąpi problem z wydajnością, zalecane jest zapoznanie się z sugestiami w tematach dotyczących zwiększania wydajności wymienionych powyżej i stosowania zmian w obszarach, które mają wpływ na napotkane problemy.

Tworzenie progów i alertów

Monitor replikacji umożliwia ustawienie kilku progów związanych ze stanem i wydajnością. Zaleca się ustawienie odpowiednich progów dla topologii; jeśli próg zostanie osiągnięty, zostanie wyświetlone ostrzeżenie, a opcjonalnie można wysłać alert na konto e-mail, pagera lub inne urządzenie. Aby uzyskać więcej informacji, zobacz Ustawianie progów i ostrzeżeń w monitorze replikacji.

Oprócz alertów, które mogą być skojarzone z progami monitorowania, replikacja udostępnia szereg wstępnie zdefiniowanych alertów, które reagują na akcje agenta replikacji. Te alerty mogą być używane przez administratora do informowania o stanie topologii replikacji. Zalecane jest zapoznanie się z tematem opisującym alerty i używanie dowolnych elementów odpowiadających potrzebom administrowania (w razie potrzeby można również utworzyć dodatkowe alerty). Aby uzyskać więcej informacji, zobacz Użyj alertów dla zdarzeń agenta replikacji.

Monitorowanie topologii replikacji

Po skonfigurowaniu topologii replikacji oraz skonfigurowaniu progów i alertów zaleca się regularne monitorowanie replikacji. Monitorowanie topologii replikacji jest ważnym aspektem wdrażania replikacji. Ponieważ działanie replikacji jest rozproszone, istotne jest śledzenie aktywności i stanu na wszystkich komputerach zaangażowanych w replikację. Do monitorowania replikacji można użyć następujących narzędzi:

  • Monitor replikacji to najważniejsze narzędzie do monitorowania replikacji, które umożliwia monitorowanie ogólnej kondycji topologii replikacji. Aby uzyskać więcej informacji, zobacz Monitorowanie replikacji.

  • Transact-SQL i obiekty zarządzania replikacją (RMO) zapewniają interfejsy do monitorowania replikacji. Aby uzyskać więcej informacji, zobacz Monitorowanie replikacji.

  • Monitor systemu może być również przydatny do monitorowania wydajności replikacji. Aby uzyskać więcej informacji, zobacz Monitorowanie replikacji za pomocą monitora systemu.

Okresowo weryfikowanie danych

Walidacja nie jest wymagana przez replikację, ale zaleca się okresowe uruchamianie walidacji dla replikacji transakcyjnej i replikacji z łączeniem. Walidacja umożliwia sprawdzenie, czy dane u subskrybenta są zgodne z danymi u wydawcy. Pomyślna walidacja wskazuje, że w tym momencie wszystkie zmiany z Publishera zostały zreplikowane do Subscriber (i od Subscriber do Publishera, jeśli aktualizacje są obsługiwane przez Subscriber) i że dwie bazy danych są zsynchronizowane.

Zaleca się przeprowadzenie weryfikacji zgodnie z harmonogramem tworzenia kopii zapasowych bazy danych publikacji. Jeśli na przykład baza danych publikacji ma pełną kopię zapasową raz w tygodniu, walidacja może być uruchamiana raz na tydzień po zakończeniu tworzenia kopii zapasowej. Aby uzyskać więcej informacji, zobacz Validate Replicated Data.

Używanie profilów agentów do zmieniania parametrów agenta w razie potrzeby

Profile agentów zapewniają wygodną metodę ustawiania parametrów agenta replikacji. Parametry można również określić w wierszu polecenia agenta, ale zazwyczaj bardziej odpowiednie jest użycie wstępnie zdefiniowanego profilu agenta lub utworzenie nowego profilu, jeśli trzeba zmienić wartość parametru. Na przykład, jeśli używasz replikacji scalania i subskrybent zmienia połączenie z szerokopasmowego na telefoniczne, rozważ użycie profilu wolne łącze dla agenta scalania; ten profil korzysta z zestawu parametrów lepiej dostosowanych do wolniejszego połączenia. Aby uzyskać więcej informacji, zapoznaj się z profilami agenta replikacji .

Dostosowywanie okresów przechowywania publikacji i dystrybucji w razie potrzeby

Replikacja transakcyjna i replikacja scalania wykorzystują okresy przechowywania do określenia czasu przechowywania transakcji w bazie danych dystrybucji oraz częstotliwości, z jaką musi być synchronizowana subskrypcja. Zaleca się wstępne używanie ustawień domyślnych, ale aby monitorować topologię w celu określenia, czy ustawienia wymagają dostosowania. Na przykład w przypadku replikacji scalania okres przechowywania publikacji (domyślnie 14 dni) określa, jak długo metadane są przechowywane w tabelach systemowych. Jeśli subskrypcje są zawsze synchronizowane w ciągu pięciu dni, rozważ dostosowanie ustawienia do mniejszej liczby, co zmniejszy metadane i prawdopodobnie zapewni lepszą wydajność. Aby uzyskać więcej informacji, zobacz Wygaśnięcie subskrypcji i dezaktywacja.

Dowiedz się, jak modyfikować publikacje w przypadku zmiany wymagań aplikacji

Po utworzeniu publikacji może być konieczne dodanie lub usunięcie artykułów albo zmiana właściwości publikacji i artykułu. Większość zmian jest dozwolona po utworzeniu publikacji, ale w niektórych przypadkach konieczne jest wygenerowanie nowej migawki publikacji i/lub ponowne inicjowanie subskrypcji do publikacji. Aby uzyskać więcej informacji, zobacz Zmienianie publikacji i właściwości artykułu oraz Dodawanie artykułów do istniejących publikacji i usuwanie ich z istniejących publikacji.

Dowiedz się, jak wprowadzać zmiany schematu w przypadku zmiany wymagań aplikacji

W wielu przypadkach zmiany schematu są wymagane po utworzeniu aplikacji w środowisku produkcyjnym. W topologii replikacji te zmiany muszą być często propagowane do wszystkich subskrybentów. Replikacja obsługuje szeroką gamę zmian schematu w opublikowanych obiektach. Jeśli wprowadzisz dowolną z następujących zmian schematu w odpowiednim opublikowanym obiekcie w programie Microsoft SQL Server Publisher, ta zmiana jest domyślnie propagowana do wszystkich subskrybentów programu SQL Server:

  • ALTER TABLE (zmień tabelę)

  • ALTER VIEW

  • ALTER PROCEDURE

  • ZMIEŃ FUNKCJĘ

  • ALTER TRIGGER

Aby uzyskać więcej informacji, zobacz Wprowadzanie zmian schematu w bazach danych publikacji.