Omówienie dublowania bazy danych

dublowanie bazy danych jest przede wszystkim rozwiązanie programowe dla zwiększenia dostępności bazy danych.Dublowanie wdrożone na podstawie na bazę danych i działa tylko z bazy danych używające pełnego model odzyskiwanie.Modele proste i bulk-logged odzyskiwanie nie obsługują dublowanie bazy danych.Dlatego zawsze pełni rejestrowane są wszystkie operacje zbiorcze.Dublowanie baz danych współpracuje z dowolnego poziom zgodności obsługiwane bazy danych.

Ostrzeżenie

Nie można dublować master, msdb, tempdb, lub model baz danych.

Dublowanie baz danych przechowuje dwie kopie jednej bazy danych musi znajdować się na innym serwerze wystąpienia Aparat baz danych programu SQL Server.Zazwyczaj te wystąpienia serwera znajdują się na komputerach w różnych lokalizacjach.Jedno wystąpienie serwera służy bazy danych klientów ( serwer dublowany). Inne wystąpienie działa jako hot lub serwer rezerwy aktywnej ( lustrzane serwera), w zależności od konfiguracja i stanu sesja dublowanie.Podczas synchronizowania dublowanie bazy danych sesja dublowania baz danych zawiera hot serwer rezerwowy obsługujący szybkie przełączanie awaryjne bez utraty danych z transakcji.Podczas sesja nie są zsynchronizowane, serwer duplikatu jest zwykle dostępna jako serwer rezerwy aktywnej (o możliwości utraty danych).

Zalety dublowania baz danych

dublowanie bazy danych jest proste strategii, która oferuje następujące korzyści:

  • Zwiększa ochronę danych.

    dublowanie baz danych zapewnia pełne lub prawie pełne redundancję danych, w zależności od tego, czy tryb działania jest wysokiego bezpieczeństwa lub wysokiej wydajności.Aby uzyskać więcej informacji zobacz "Tryby pracy" w dalszej części tego tematu.

    A dublowanie bazy danych partner uruchomione na SQL Server 2008 Enterprise lub nowsze wersje automatycznie próbuje rozpoznać niektórych rodzajów błędów, które zapobiega odczytywania strona danych.partner, który nie może odczytać strona żąda kopii świeże od partner.Jeśli to żądanie powiedzie się, strona można odczytać zastępuje kopii, którą zwykle usuwa błąd. Aby uzyskać więcej informacji, zobacz Automatyczna naprawa strony podczas sesji dublowania bazy danych.

  • Zwiększa dostępność bazy danych.

    W zdarzenie żywiołowej w trybie wysokiego bezpieczeństwa z automatycznej pracy awaryjnej, praca awaryjna szybko przełącza wstrzymania kopię bazy danych online (bez utraty danych).W innych trybów operacyjnych administrator bazy danych ma alternatywne narzucania usługa (o możliwości utraty danych) do wstrzymania kopię bazy danych.Aby uzyskać więcej informacji zobacz "Przełączanie w roli", w dalszej części tego tematu.

  • Poprawia dostępność w produkcyjnej bazie danych podczas uaktualniania.

    Aby zminimalizować czas przestoju dublowanego bazy danych, można kolejno uaktualnienia wystąpienia SQL Server uczestniczącymi w dublowanie bazy danych sesja.To będzie powodowało przestojów tylko pojedynczy pracy awaryjnej.Ten formularz uaktualnienia jest znany jako uaktualnienia stopniowego. Aby uzyskać więcej informacji, zobacz Jak Zainstaluj dodatek Service Pack w systemie z minimalnym czasem przestojów dublowanego baz danych.

Jak bazy danych programu Works dublowanie

Serwery główne i dublowania komunikować się i współpracować jako Partnerzy w dublowanie bazy danych sesja.Dwaj partnerzy pełnienia ról uzupełniające w sesja: główną rolę i lustrzane roli.W dowolnym podane czas, jednym partner pełni rolę głównej i innych partner pełni rolę dublowania.Każdy partner jest opisany jako -właściciel bieżącej roli.partner, który jest właścicielem roli głównego jest znany jako serwer dublowany, a jego kopia bazy danych jest bieżący dublowana baza danych.partner, który jest właścicielem roli dublowania jest znany jako serwer duplikatu, a jego kopię bazy danych jest bieżąca baza danych dublowania.Podczas dublowanie bazy danych jest wdrażany w środowisku produkcyjnym, dublowana baza danych jest bazy danych produkcji.

dublowanie baz danych polega na Ponawianie co Wstawianie, aktualizowania i usuwania operacji, który występuje na dublowana baza danych na kopię bazy danych najszybciej jak to możliwe.Ponawianie jest realizowane przez wysłanie strumienia rekordów dziennika transakcji active serwer duplikatu, którego dotyczy rekordów dziennika bazy danych dublowanie w sekwencji, jak najszybciej.W przeciwieństwie do replikacja, która działa poziom logicznym, dublowanie bazy danych działa poziom rekordu dziennika fizycznego.Począwszy od SQL Server 2008, serwer dublowany kompresuje strumienia rekordy dziennika transakcji przed wysłaniem go do serwer duplikatu.Ten dziennik kompresji występuje w dublowanie wszystkie sesje.

Tryby działania

A dublowanie bazy danych uruchamia sesja z Operacja synchroniczna lub asynchroniczna.W obszarze operacja asynchroniczna, zatwierdzić zatwierdzanie bez oczekiwania na serwer duplikatu do dysku, co maksymalizuje wydajność zapisu dziennika.W obszarze Operacja synchroniczna transakcji jest zaangażowana w obu partnerów, ale kosztem transakcji opóźnienie.

Istnieją dwa tryby działania dublowanie.Jeden z nich, trybie wysokiego bezpieczeństwa obsługuje operacji synchronicznych.W trybie wysokiego bezpieczeństwa, po rozpoczęciu sesja serwer duplikatu jak najszybciej synchronizuje duplikat bazy danych wraz z dublowana baza danych.Jak najszybciej baz danych są synchronizowane, transakcja została zatwierdzona w obu partnerów jest związany z transakcji opóźnienie.

Tryb operacyjny drugiego Tryb wysokiej wydajności, działa asynchronicznie.serwer duplikatu próbuje nadążać za rekordów dziennika wysłanych przez serwer dublowany.duplikat bazy danych Może być nieco za dublowana baza danych zwłoki.Jednak zazwyczaj odstępu między bazami danych jest mała.Jednakże szczeliny może stać się istotne, jeśli serwer dublowany obciążenia ciężkich pracy lub system serwer duplikatu jest przeciążona.

W trybie wysokiej wydajności, tak szybko, jak serwer dublowany wysyła rekordu dziennika do serwer duplikatu, serwer dublowany wysyła potwierdzenie do klient.Nie oczekuje na potwierdzenie ze serwer duplikatu.Oznacza to, że zatwierdzanie zatwierdzanie bez oczekiwania na serwer duplikatu zapisać dziennik dysku.Taka operacja asynchroniczna umożliwia serwer dublowany do uruchomienia przy użyciu transakcji minimalne opóźnienia, na potencjalne ryzyko utratę danych.

Wszystkie bazy danych, dublowanie sesje obsługi tylko jeden serwer dublowany i jeden serwer duplikatu.konfiguracja tę pokazano na poniższej ilustracji.

Partnerzy w sesji tworzenia kopii lustrzanej bazy danych

Tryb wysokiego bezpieczeństwa z automatyczna praca awaryjna wymaga trzecie wystąpienie serwera znany jako świadka.W odróżnieniu od dwóch partnerów Monitor nie służą bazy danych.Monitor obsługuje automatyczna praca awaryjna przez sprawdzenie, czy działa serwer dublowany i funkcjonowania.serwer duplikatu inicjuje automatyczna praca awaryjna tylko wtedy, gdy lusterka i monitora pozostają połączone ze sobą po obu Rozłączono z serwer dublowany.

Ilustracja przedstawia konfiguracja zawierającą świadka.

Sesja tworzenia kopii lustrzanej zawierająca monitor

Aby uzyskać więcej informacji zobacz "Przełączanie w roli", w dalszej części tego tematu.

Ostrzeżenie

Ustanowienie nowej sesja dublowanie wymaga uruchomienie tej samej wersja wszystkich wystąpień serwera zaangażowanych SQL Server.Jednak po uaktualnieniu do SQL Server 2008, mogą być różne wersje wystąpień zaangażowanych.Aby uzyskać więcej informacji, zobacz Jak Zmniejszenie czasu przestojów dublowanego baz danych podczas uaktualniania wystąpienia serwera.

Bezpieczeństwo transakcji i tryby działania

Czy tryb działania jest synchroniczna lub asynchroniczna, zależy od ustawienia bezpieczeństwa transakcji.Jeśli używasz wyłącznie SQL Server Management Studio do konfigurowania dublowanie bazy danych, ustawienia bezpieczeństwa transakcji są konfigurowane automatycznie po wybraniu trybu operację.

Jeśli używasz Transact-SQL do konfigurowania dublowania baz danych, należy zrozumieć jak zestaw bezpieczeństwa transakcji.Bezpieczeństwo transakcji jest kontrolowana przez właściwość bezpieczeństwa instrukcja ALTER DATABASE.W bazie danych są lustrzany bezpieczeństwa jest albo pełne lub OFF.

  • Jeśli opcja bezpieczeństwa jest zestaw pełne, dublowanie operacji bazy danych jest synchroniczna, a po wstępnej fazie synchronizacji.Jeżeli zestaw w trybie wysokiego bezpieczeństwa sesja obsługuje automatyczne pracy awaryjnej.

  • Jeśli opcja bezpieczeństwa jest zestaw , dublowanie operacji bazy danych jest asynchroniczne.Sesja jest uruchamiany w trybie wysokiej wydajności i opcji ŚWIADKA powinny być wyłączone.

Aby uzyskać więcej informacji, zobacz Ustawienia języka Transact-SQL i bazy danych, dublowanie tryby działania.

Przełączanie roli

W kontekście sesja dublowanie bazy danych kapitału i dublowania role są zazwyczaj wymienne w proces znany jako Przełączanie roli.Przełączanie roli obejmuje Transferowanie roli głównego do serwer duplikatu.W przełączanie roli, dublowanie działa jako partner pracy awaryjnej dla serwer dublowany.Gdy występuje przełącznik roli, serwer duplikatu przejmuje rolę głównego i zapewnia jego kopię bazy danych online jako nowej dublowana baza danych.Byłego serwer dublowany, jeśli jest dostępny, odpowiadające przyjmuje rolę dublowania i jego bazy danych staje się nowym duplikat bazy danych.Potencjalnie role i z powrotem wielokrotnie przełączać.

Istnieją następujące trzy formy przełączanie roli.

  • Automatyczna praca awaryjna

    Wymaga to w trybie wysokiego bezpieczeństwa oraz obecność serwer duplikatu i świadka.Bazy danych musi już być synchronizowany, a monitor muszą być podłączone do serwer duplikatu.

    Rolę monitora jest sprawdzenie, czy działa serwer danego partner i funkcjonowania.Jeśli serwer duplikatu straci połączenie z serwer dublowany, ale monitora jest nadal połączony z serwer dublowany, serwer duplikatu nie inicjowania pracy awaryjnej.Aby uzyskać więcej informacji, zobacz Dublowanie świadka bazy danych.

  • Ręczne przejęcie awaryjne

    Wymaga to tryb wysokiego bezpieczeństwa.Partnerów muszą być połączone ze sobą i bazy danych musi już być synchronizowany.

  • Wymuszone usługa (o możliwości utraty danych)

    W trybie wysokiej wydajności i w trybie wysokiego bezpieczeństwa bez automatyczna praca awaryjna, wymuszanie usługa jest możliwe, jeśli serwer dublowany nie powiodła się i serwer duplikatu jest dostępny.

    Ważna informacjaWażne:

    Tryb wysokiej wydajności jest przeznaczony do uruchomienia bez świadka.Ale jeśli istnieje dowód, wymuszanie usługa wymaga, że monitor jest podłączony do serwer duplikatu.

W dowolnym przełączania roli scenariuszu tak szybko jak nowa dublowana baza danych do trybu online, aplikacje klienckie można szybko odzyskać przez ponowne połączenie z bazą danych.

Współdziałania i współistnienia z innymi funkcjami aparat bazy danych

Dublowanie baz danych mogą być używane następujące funkcje lub składniki SQL Server.

Dublowanie obsługi bazy danych

Ponieważ SQL Server 2005 Service Pack 1 (SP1), partnerzy dublowanie bazy danych i świadków są obsługiwane przez Standard i Enterprise Edition.Ale partnerzy muszą używać tej samej wersji i asynchronicznych dublowanie bazy danych (tryb wysokiej wydajności) jest obsługiwana tylko przez Enterprise Edition.Świadkowie są również obsługiwane przez Workgroup Edition i Express Edition.