Udostępnij za pośrednictwem


Database Mirroring Overview

Dublowanie bazy danych jest przede wszystkim rozwiązanie programowe zwiększenia dostępności bazy danych.Dublowanie wykonywane na podstawie na bazę danych, może pracować tylko z bazami danych, korzystające z model pełnego odzyskiwanie.Modele Odzyskiwanie proste i rejestrowane zbiorczej nie obsługują dublowanie bazy danych.Dlatego zawsze pełni rejestrowane są wszystkie operacje zbiorcze.Dublowanie bazy danych współpracuje z dowolnego poziom zgodności obsługiwana baza danych.

Uwaga

Nie można wykonać dublowania wzorca, msdb, tempdb lub modelu bazy danych.

Dublowanie bazy danych przechowuje dwie kopie jednej bazy danych musi znajdować się na innym serwerze wystąpienia SQL Server Database Engine. Zazwyczaj te wystąpienia serwera znajdują się na komputerach pracujących w różnych lokalizacjach.Jedno wystąpienie serwera udostępnia klientom (bazy danych serwer główny).Inne wystąpienie działa jako dostępu lub gorący serwer rezerwy ( serwer dublowany), w zależności od konfiguracja i stanie dublowanie sesja.Podczas synchronizowania dublowanie sesja bazy danych dublowanie bazy danych zawiera gorąco serwer rezerwy obsługującej szybkiego trybu pracy awaryjnej, bez utraty danych z transakcji zatwierdzonych.Podczas tej sesja nie są zsynchronizowane, serwer dublowany jest zwykle dostępna jako serwer ciepłej rezerwy (o możliwości utraty danych).

Korzyści dublowanie bazy danych

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

  • Zwiększa ochronę danych.

    Dublowanie bazy danych zapewnia pełne lub prawie pełny redundancję danych, w zależności od tego, czy tryb działania jest wysokiego bezpieczeństwa i wydajności.Aby uzyskać więcej informacji zobacz "Operacyjne tryby," w dalszej części tego tematu.

    A dublowanie bazy danych partner zasilany SQL Server 2008 Enterprise lub nowszych wersji automatycznie usiłuje rozpoznać niektórych rodzajów błędów, które uniemożliwiają czytanie strona danych. partner, który nie może odczytać strona żąda świeżej kopii od partner.Jeśli to żądanie zakończy się pomyślnie, nie można odczytać strona zastępuje kopii, którą zwykle usuwa ten błąd.Aby uzyskać więcej informacji zobaczAutomatic Page Repair During a Database Mirroring Session.

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

    W przypadku wystąpienia systemu po awarii w trybie wysokiego bezpieczeństwa z automatyczna praca awaryjna, praca awaryjna szybko powoduje wstrzymania kopię bazy danych online (bez utraty danych).W innych trybów operacyjnych administrator bazy danych ma alternatywne wymuszenia usługa (o możliwości utraty danych) do wstrzymania kopię bazy danych.Aby uzyskać więcej informacji zobacz "przełączanie roli," w dalszej części tego tematu.

  • Zwiększa dostępność w produkcyjnej bazie danych podczas uaktualnienia.

    Aby zminimalizować czas przestoju dublowane bazy danych, można kolejno uaktualnić wystąpienia SQL Server które uczestniczą w dublowanie bazy danych sesja. Spowoduje to ponosić przestojów tylko pojedyncze pracy awaryjnej.Ten formularz uaktualnienia jest znany jako uaktualnienia stopniowego.Aby uzyskać więcej informacji zobaczHow to: Install a Service Pack on a System with Minimal Downtime for Mirrored Databases.

W jaki sposób dublowanie bazy danych programu Works

Serwery kapitał i dublowania komunikacji i współpracy jako partnerzy in a dublowanie sesja bazy danych.Dwoma partnerami pełnienia ról uzupełniających w sesja: the główną rolę and the dublowanie roli.W dowolnym momencie jednym partner pełni rolę głównego i innych partner pełni rolę dublowania.Każdy partner są opisywane jako -właściciel jego bieżącej roli.Nazywa się partner, który jest właścicielem roli głównego serwer główny, a jego kopię bazy danych jest bieżącą główna baza danych.Nazywa się partner, który jest właścicielem roli dublowania serwer dublowany, a jego kopię bazy danych jest bieżąca baza danych dublowania.Podczas dublowanie bazy danych jest wdrażany w środowisku produkcyjnym, główna baza danych jest produkcyjnej bazy danych.

dublowanie bazy danych pociąga za sobą ponawianie co wstawiania, aktualizować i usuwać operację wykonywaną w główna baza danych do lustrzana baza danych tak szybko jak to możliwe.Ponawianie jest realizowane przez wysłanie do serwer dublowany, który dotyczy zapisów dziennika lustrzana baza danych, w kolejności, jak najszybciej strumienia rekordów dziennika aktywnej transakcji.W przeciwieństwie do replikacja, który działa poziom logiczne, dublowanie bazy danych działa poziom rekordu dziennika fizycznego.Począwszy od SQL Server 2008, serwer główny kompresuje strumienia rekordy dziennik transakcji przed wysłaniem go do serwer dublowany. Kompresja tego dziennika zostanie dublowanie wszystkich sesji.

Tryby działania

Dublowanie sesja bazy danych jest uruchamiane przy użyciu operacji synchronicznego lub asynchronicznego.W obszarze operacja asynchroniczna, zatwierdzanie transakcji, bez konieczności oczekiwania serwer dublowany do zapisu w dzienniku na dysku, co maksymalizuje wydajność.W obszarze synchronicznych operacji transakcji jest zaangażowana w obu partnerów, ale jest związany z transakcji zwiększenia 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 dublowany synchronizuje lustrzana baza danych wraz z główna baza danych tak szybko jak to możliwe.Tak szybko, jak bazy danych są synchronizowane, transakcja jest zatwierdzona na obu partnerów, jest związany z transakcji zwiększenia czasu oczekiwania.

Drugi tryb działania Tryb wysokiej wydajności, jest uruchamiane asynchronicznie.serwer dublowany próbuje nadążyć z rekordów dziennika wysłanych przez serwer główny.lustrzana baza danych może być zwłoki nieco związany z główna baza danych.Jednak zazwyczaj odstępu między bazami danych jest mała.Jednak luki może stać się istotne serwer główny jest pod obciążeniem ciężki pracy lub system serwer dublowany jest nadmiernie obciążony.

W trybie wysokiej wydajności od razu serwer główny wysyła do serwer dublowany rekordu dziennika serwer główny wysyła potwierdzenie do klient.To nie czeka na potwierdzenie z serwer dublowany.Oznacza to, że ten zatwierdzanie transakcji bez oczekiwania serwer dublowany do zapisu w dzienniku na dysku.Taka operacja asynchroniczna umożliwia serwerowi głównych do uruchomienia przy użyciu transakcji minimalny opóźnienie, na potencjalne ryzyko utraty niektórych danych.

Wszystkie sesje dublowanie bazy danych obsługuje tylko jeden serwer główny i jeden serwer dublowany.Na poniższej ilustracji przedstawiono tę konfiguracja.

Partners in a database mirroring session

W trybie wysokiego bezpieczeństwa z automatyczna praca awaryjna wymagane trzecie wystąpienie serwera, znane jako dowód.W przeciwieństwie do dwóch partnerów dowód nie służy w bazie danych.Dowód obsługuje automatyczna praca awaryjna przez sprawdzenie, czy serwer główny działa i działa.serwer dublowany inicjuje automatyczna praca awaryjna, tylko wtedy, gdy kopię i dowód pozostają połączone ze sobą po obu nastąpiło rozłączenie z serwer główny.

Na poniższej ilustracji pokazano konfiguracja, który zawiera świadka.

A mirroring session that includes a witness

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

Uwaga

Ustanowienie nowej sesja dublowanie wymaga wszystkich wystąpień serwera zaangażowanych uruchomienie tej samej wersja programu SQL Server. Jednak po uaktualnieniu do SQL Server 2008, może się zmieniać w wersjach zaangażowanych wystąpień. Aby uzyskać więcej informacji zobaczHow to: Minimize Downtime for Mirrored Databases When Upgrading Server Instances.

Bezpieczeństwo transakcji i trybów operacyjnych

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

Jeśli używasz Transact-SQL Aby skonfigurować dublowanie bazy danych, należy zrozumieć sposób ustawiania bezpieczeństwo transakcji. Bezpieczeństwo transakcji jest określany na podstawie właściwość bezpieczeństwa instrukcja ALTER DATABASE.W bazie danych, które jest są dublowane, bezpieczeństwa jest albo FULL lub OFF.

  • Jeśli opcja bezpieczeństwa jest zestaw do FULL, dublowanie bazy danych operacja jest synchroniczna, a po początkowej fazie synchronizacji.Jeśli jest świadka zestaw w trybie wysokiego bezpieczeństwa sesja obsługuje automatyczna praca awaryjna.

  • Jeśli opcja bezpieczeństwa jest ustawiona jako wyłączona, dublowanie bazy danych operacja jest asynchroniczna.Sesja jest uruchamiany w trybie wysokiej wydajności, a opcja dowód powinien być również wyłączona.

Aby uzyskać więcej informacji zobaczTransact-SQL Settings and Database Mirroring Operating Modes.

Przełączanie roli

W kontekście sesja dublowanie bazy danych kapitał i dublowania role są zazwyczaj wymienne w proces znany jako Przełączanie roli.przełączanie roli pociąga za sobą Transferowanie roli głównych serwer dublowany.W roli przełączania, serwer dublowany działa jako partner pracy awaryjnej serwer główny.W przypadku wystąpienia przełącznika roli serwer dublowany przejmuje rolę głównego i powoduje jego kopię bazy danych online jako nową główna baza danych.Poprzednie serwer główny, jeśli jest dostępny, odpowiadające przyjmuje rolę dublowania i jego bazy danych staje się nową bazę danych dublowania.Potencjalnie role, można przełączać i z powrotem wielokrotnie.

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

  • Automatyczna praca awaryjna

    Wymaga to w trybie wysokiego bezpieczeństwa i obecności serwera lustrzane i świadka.Baza danych musi już być synchronizowany, a dowód musi być podłączony do serwer dublowany.

    Rola dowód jest sprawdzenie, czy działa serwer danego partner i działania.Jeśli serwer dublowany traci jego połączenie z serwerem głównym, ale dowód jest nadal połączony z serwerem głównym, serwer dublowanie nie zainicjować awaryjnego.Aby uzyskać więcej informacji zobaczDatabase Mirroring Witness.

  • ręczna praca awaryjna

    Wymaga to trybie wysokiego bezpieczeństwa.Partnerzy muszą być połączone ze sobą, a baza danych musi już być synchronizowany.

  • wymuszona 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 główny nie powiodło się i serwer dublowany jest dostępny.

    Important noteImportant Note:

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

W scenariuszu wszelkie zmiany roli tak szybko, jak nowe główna baza danych pochodzą online, aplikacje klienckie może odzyskać szybko przez ponowne połączenie z bazą danych.

Współdziałania i współistnienia z innych funkcji aparat bazy danych

Dublowanie bazy danych można używać następujących funkcji lub składników SQL Server.

dublowanie bazy danych Obsługa

Od czasu SQL Server 2005 Z dodatkiem usługa Pack 1 (SP1), dublowanie bazy danych partnerów i świadków są już obsługiwane przez SQL Server Standardowe i SQL Server Flaga. Jednak partnerzy muszą używać tej samej wersji i asynchronicznych dublowanie bazy danych (tryb wysokiej wydajności) jest obsługiwana tylko przez SQL Server Flaga. Świadków są także obsługiwane przez SQL Server Grupa robocza i SQL Server Diagram Express.