1. Wprowadzenie do SQL Server Duża dostępność
Wysoka dostępność w SQL Server Odnosi się do zdolności systemu do utrzymania sprawności operacyjnej przy minimalnym przestoju w przypadku awarii sprzętu, problemów z oprogramowaniem lub planowanych prac konserwacyjnych. Znaczenia wysokiej dostępności nie można przecenić. Gdy bazy danych stają się niedostępne, organizacje ponoszą natychmiastowe konsekwencje, w tym:ost przychody, zmniejszona produktywność i niezadowolenie klientów.
Chociaż terminy wysoka dostępność (HA) i odzyskiwanie po awarii (DR) są często używane zamiennie, odnoszą się one do różnych scenariuszy awarii. HA koncentruje się na minimalizacji przestojów spowodowanych lokalnymi awariami, takimi jak awarie serwerów lub instancji, podczas gdy DR ma na celu odzyskiwanie po katastrofach na dużą skalę, które wpływają na całe centrum danych lub region.
Planowanie HA opiera się na dwóch kluczowych wskaźnikach:
- Cel czasu odzyskiwania (RTO) określa maksymalny akceptowalny czas przestoju po awarii
- Cel punktu odzyskiwania (RPO) określa maksymalną dopuszczalną utratę danych.
Dostępność jest powszechnie mierzona w „dziewiątkach”: 99.9% (trzy dziewiątki) pozwala na 8.76 godzin przestoju rocznie, 99.99% (cztery dziewiątki) pozwala na 52.6 minut, a 99.999% (pięć dziewiątek) ogranicza przestoje do zaledwie 5.26 minut rocznie.
2. SQL Server Przegląd rozwiązań o wysokiej dostępności
2.1 Kategorie rozwiązań HA
SQL Server rozwiązania o wysokiej dostępności można klasyfikować według kilku wymiarów:
- Zabezpieczenia na poziomie instancji i bazy danych: Zabezpieczenia na poziomie instancji, takie jak instancje klastra trybu failover, chronią całe instancje, w tym wszystkie bazy danych i obiekty serwerów, podczas gdy zabezpieczenia na poziomie bazy danych, takie jak grupy dostępności Always On, chronią określone bazy danych.
- Synchroniczne i asynchroniczne przesyłanie danych: Synchroniczne przesyłanie danych gwarantuje zerową utratę danych, ale może powodować opóźnienia, podczas gdy przesyłanie asynchroniczne optymalizuje wydajność, ale wiąże się z możliwą utratą danych.
- Automatyczne a ręczne przełączanie awaryjne: automatyczne przełączanie awaryjne minimalizuje przestoje bez konieczności ręcznej interwencji, natomiast ręczne przełączanie awaryjne zapewnia większą kontrolę, ale wymaga działań administratora.
2.2 Typowe rozwiązania HA
SQL Server zapewnia osiem podstawowych rozwiązań o wysokiej dostępności, z których każde jest przeznaczone do konkretnych scenariuszy:
- Grupy dostępności Always On
- Grupy dostępności zawarte
- Rozproszone grupy dostępności
- Instancje klastra trybu failover
- SQL Server Replikacja
- Wysyłka kłód
- Dublowanie bazy danych
- Łącze do zarządzanej instancji
3. Grupy dostępności zawsze włączone
Grupy dostępności Always On reprezentują SQL Serverwiodące rozwiązanie zapewniające wysoką dostępność i odzyskiwanie danych po awarii na poziomie bazy danych, wprowadzone w SQL Server 2012. Umożliwia awaryjne przełączanie grup baz danych jako pojedynczej jednostki, zapewniając jednocześnie czytelne repliki wtórne w celu odciążenia zapytań.
Kluczowe funkcje
- Obsługa maksymalnie 9 replik łącznie (1 podstawowa + 8 wtórnych)
- Do 5 replik w trybie synchronicznego zatwierdzania (1 podstawowa + 4 pomocnicze)
- Automatyczne przełączanie awaryjne z zerową utratą danych w trybie synchronicznym
- Czytelne repliki wtórne do odciążenia zapytań
- Przenoszenie kopii zapasowych do replik wtórnych
- Nasłuchiwacz grupy dostępności do automatycznego kierowania połączeniami
- Trasowanie tylko do odczytu w przypadku zapytań odczytu równoważących obciążenie
- Wiele baz danych przełącza się awaryjnie razem jako grupa
Kroki wdrażania
- Konfigurowanie klastra trybu failover systemu Windows Server (WSFC) lub klastra Linux Pacemaker
- Włącz funkcję Zawsze włączonych grup dostępności we wszystkich SQL Server instancje
- Upewnij się, że bazy danych korzystają z modelu pełnego odzyskiwania i mają pełne kopie zapasowe
- Utwórz punkty końcowe kopii lustrzanej bazy danych w każdej replice
- Utwórz grupę dostępności i dodaj bazy danych
- Skonfiguruj repliki podstawowe i pomocnicze w żądanych trybach
- Utwórz i skonfiguruj nasłuchiwacz grupy dostępności
- Skonfiguruj routing tylko do odczytu, jeśli używasz odczytalnych serwerów pomocniczych
- Przetestuj procedury przełączania awaryjnego i zweryfikuj łączność aplikacji
Najlepsze dla:
- Bazy danych o znaczeniu krytycznym, wymagające maksymalnego czasu sprawności
- Organizacje potrzebujące zarówno lokalnej HA, jak i geograficznego DR
- Środowiska wymagające możliwości skalowania odczytu
- Aplikacje korzystające z odciążenia zapytań dotyczących raportowania
- Bazy danych wymagające ochrony przed utratą danych
- Aplikacje wielobazowe wymagające skoordynowanego przełączania awaryjnego
ZALETY
- Zerowa utrata danych dzięki trybowi zatwierdzania synchronicznego
- Automatyczne przełączanie awaryjne minimalizuje czas przestoju (zwykle kilka sekund)
- Możliwość odczytu nośników wtórnych zmniejsza obciążenie nośników podstawowych
- Brak wymogu współdzielonej pamięci masowej
- Obsługuje platformy Windows i Linux
- Dystrybucja geograficzna w celu odzyskiwania po awarii
- Operacje tworzenia kopii zapasowych można przenieść na serwery pomocnicze
- Ciągi połączeń aplikacji pozostają niezmienione po przełączeniu awaryjnym
Wady
- Do pełnej funkcjonalności wymagana jest edycja Enterprise
- Standard Edition ograniczony do Basic AG (1 baza danych, 1 baza pomocnicza, brak czytelnej bazy pomocniczej)
- Złożona konfiguracja i zarządzanie
- Wymaga infrastruktury klastrowej (WSFC lub Pacemaker)
- Obiekty na poziomie instancji (logowania, zadania) wymagają ręcznej synchronizacji
- Tryb synchroniczny może powodować opóźnienia transakcji
- Licencjonowanie costdla wielu serwerów
Referencje
- SQL Server Grupy dostępności Always On: kompletny przewodnik
- Oficjalny dokument firmy Microsoft: Omówienie grup dostępności Always On (SQL Server)
4. Grupy dostępności w pakiecie
Grupy dostępności zawarte wprowadzono w SQL Server 2022, rozszerzenie tradycyjnych grup dostępności Always On poprzez automatyczną synchronizację obiektów na poziomie instancji w replikach, eliminując potrzebę ręcznej replikacji logowań, zadań i innych obiektów na poziomie serwera.
Kluczowe funkcje
- Automatyczna synchronizacja obiektów na poziomie instancji (loginów, użytkowników, ról)
- SQL Server Zadania agentów replikowane we wszystkich replikach
- Automatyczna synchronizacja uprawnień bazy danych
- Włączono wszystkie funkcje Always On AG
- Uproszczone przełączanie awaryjne z pełną replikacją środowiska
- Obsługa platform Windows i Linux
Kroki wdrażania
- Zapewniać SQL Server 2022 lub później we wszystkich przypadkach
- Konfigurowanie infrastruktury klastra WSFC lub Pacemaker
- Włącz funkcję Zawsze włączone we wszystkich instancjach
- Utwórz grupę dostępności w ramach umowy z opcją CONTAINED
- Dodaj bazy danych do zawartej grupy AG
- Twórz loginy i zadania w kontekście AG
- Skonfiguruj odbiornik i przetestuj przełączanie awaryjne
Najlepsze dla:
- Organizacje chcące uprościć administrację AG
- Środowiska z częstymi testami awaryjnymi lub operacjami
- Aplikacje wymagające wielu obiektów na poziomie instancji
- Nowości SQL Server Wdrożenia 2022+
- Zespoły starające się o obniżkęost-konfiguracja failover
ZALETY
- Eliminuje ręczną synchronizację logowań i zadań
- Szybsze i bardziej niezawodne przełączanie awaryjne
- Zmniejszone koszty administracyjne
- Aplikacje działają natychmiast po przełączeniu awaryjnym
- Uproszczone procedury odzyskiwania po awarii
- W cenie wszystkie tradycyjne świadczenia AG
Wady
- Wymaga SQL Server 2022 lub nowszy
- Do pełnej funkcjonalności wymagana jest edycja Enterprise
- Nie można przekształcić istniejących tradycyjnych grup AG w grupy AG zawarte
- Wszystkie repliki muszą obsługiwać funkcję AG w kontenerze
- Dodatkowa złożoność w porównaniu do tradycyjnych grup AG
Referencje
5. Rozproszone grupy dostępności
Grupy dostępności rozproszonej wprowadzone w SQL Server 2016, włącz architekturę „Grupy dostępności grup dostępności”, łączącą dwie niezależne grupy AG w oddzielnych klastrach na potrzeby zaawansowanych scenariuszy odzyskiwania po awarii i migracji.
Kluczowe funkcje
- Łączy dwie niezależne grupy dostępności
- Każda grupa AG utrzymuje własny niezależny klaster
- Obsługa wielu platform (Windows i Linux)
- Replikacja między klastrami bez współdzielonego członkostwa w klastrze
- Jeden AG pełni funkcję podstawową, drugi rolę pomocniczą
- Obsługuje tryby synchroniczny i asynchroniczny
- Dystrybucja geograficzna w regionach lub kontynentach
Kroki wdrażania
- Utwórz i skonfiguruj pierwszą grupę dostępności (podstawową grupę DAG)
- Utwórz i skonfiguruj drugą grupę dostępności (drugorzędną grupę DAG)
- Utwórz rozproszoną grupę AG łączącą dwie grupy AG
- Konfiguruj synchronizację danych między grupami AG
- Skonfiguruj odbiornik na każdej grupie AG w celu zapewnienia łączności z aplikacją
- Konfigurowanie zasad przełączania awaryjnego i procedur testowych
- Zweryfikuj komunikację między klastrami i replikację
Najlepsze dla:
- Odzyskiwanie danych po awarii w wielu regionach, obejmujące niezależne centra danych
- Migracja międzyplatformowa z systemu Windows do systemu Linux i odwrotnie
- Scenariusze chmury hybrydowej łączące środowisko lokalne z platformą Azure
- Główne aktualizacje wersji wymagające wydłużonych okien migracji
- Organizacje z wieloma niezależnymi klastrami failover
- Przedsiębiorstwa globalne potrzebujące replikacji na całym kontynencie
ZALETY
- Rozdziela zależności klastrowe między witrynami
- Umożliwia prawdziwą dystrybucję geograficzną
- Obsługuje scenariusze międzyplatformowe
- Każda grupa AG może przełączać się na tryb failover niezależnie
- Idealny dla złożonych projektów migracyjnych
- Nie jest wymagana żadna współdzielona infrastruktura klastra
- Może obejmować różne domeny systemu Windows lub dystrybucje systemu Linux
Wady
- Wymagana edycja Enterprise
- Wysoka złożoność konfiguracji i zarządzania
- Wymaga dogłębnego zrozumienia zarówno technologii klastrowania, jak i AG
- Trudniejsze do rozwiązania niż standardowe AG
- Dodatkowe opóźnienie w scenariuszach międzyregionalnych
- Wymaga starannego zaplanowania procedur przełączania awaryjnego
Referencje
6. Instancje klastra trybu failover (FCI)
Instancje klastra trybu failover zapewniają wysoką dostępność na poziomie instancji, wykorzystując współdzieloną pamięć masową i klaster trybu failover systemu Windows Server, umożliwiając automatyczne przełączanie awaryjne całego systemu. SQL Server instancja obejmująca wszystkie bazy danych i obiekty na poziomie serwera.
Kluczowe funkcje
- Ochrona na poziomie instancji (wszystkie bazy danych przełączają się awaryjnie jednocześnie)
- Konfiguracja aktywna-pasywna ze współdzieloną pamięcią masową
- Wirtualna nazwa sieciowa (VNN) do przezroczystego przełączania awaryjnego
- Automatyczne przełączanie awaryjne w przypadku awarii aktywnego węzła
- Zerowa utrata danych (pojedyncza kopia danych)
- Dodano obiekty na poziomie serwera (loginy, zadania, połączone serwery)
- Obsługuje wszystkie SQL Server modele odzyskiwania
Kroki wdrażania
- Konfigurowanie klastra trybu failover serwera Windows (WSFC)
- Konfigurowanie współdzielonej pamięci masowej (SAN, SMB, Storage Spaces Direct)
- Konfigurowanie ustawień kworum klastra
- Zainstalować SQL Server jako instancja klastra trybu failover na pierwszym węźle
- Dodaj dodatkowe węzły do FCI
- Skonfiguruj nazwę sieci wirtualnej i adres IP
- Test przełączania awaryjnego między węzłami klastra
- Konfigurowanie aplikacji klienckich do korzystania z VNN
Najlepsze dla:
- Organizacje z istniejącą infrastrukturą współdzielonej pamięci masowej
- Środowiska wymagające ochrony na poziomie instancji
- Wysoka dostępność lokalna w ramach jednego centrum danych
- Aplikacje wymagające jednoczesnego przełączania awaryjnego wszystkich baz danych
- Scenariusze, w których konieczna jest ochrona obiektów na poziomie serwera
- Środowiska wyłącznie Windows (Linux nie jest obsługiwany przez FCI)
ZALETY
- Pełna ochrona na poziomie instancji
- Gwarancja zerowej utraty danych
- Możliwość automatycznego przełączania awaryjnego
- Nie ma potrzeby synchronizowania logowań ani zadań
- Pojedyncza kopia danych zmniejsza ilość miejsca na przechowywanieosts
- Obsługuje wszystkie modele odzyskiwania
- Ciągi połączeń aplikacji pozostają niezmienione po przełączeniu awaryjnym
Wady
- Wymaga kosztownej infrastruktury pamięci masowej współdzielonej
- Współdzielona pamięć masowa jest pojedynczym punktem awarii
- Brak możliwości odczytu i skalowania (tylko jeden aktywny węzeł)
- Ograniczony zasięg geograficzny ze względu na ograniczenia dotyczące magazynowania
- Edycja standardowa ograniczona do 2 węzłów
- Tylko Windows (brak wsparcia dla Linuksa)
- Dłuższy czas przełączania awaryjnego w porównaniu z grupami AG (zwykle kilka minut)
- Złożona konfiguracja i zarządzanie magazynem
Referencje
- SQL Server Klaster trybu failover: kompletny przewodnik dla administratorów baz danych
- Oficjalny dokument firmy Microsoft: Zawsze włączone instancje klastra trybu failover (SQL Server)
7. SQL Server Replikacja
SQL Server Replikacja to technologia dystrybucji danych, która polega na kopiowaniu i dystrybuowaniu danych na wielu serwerach, obsługująca różne topologie – od prostej dystrybucji jednokierunkowej po złożone konfiguracje wielo-główne. Jest ona jednak wykorzystywana głównie do raportowania, a nie jako rozwiązanie o czystej dostępności.
Kluczowe funkcje
- Cztery typy replikacji: migawka, transakcyjna, scalanie, peer-to-peer
- Szczegółowy wybór danych (konkretne tabele, kolumny, wiersze)
- Obsługa wielu subskrybentów od jednego wydawcy
- Dostępne topologie dwukierunkowe i wielo-masterowe
- Elastyczne opcje planowania i synchronizacji
- Rozwiązywanie konfliktów w przypadku replikacji scalającej
- Możliwości filtrowania za pomocą predykatów WHERE
Kroki wdrażania
- Skonfiguruj serwer dystrybutora (może być oddzielny lub taki sam jak serwer wydawcy)
- Utwórz publikację w bazie danych wydawcy
- Wybierz typ replikacji na podstawie wymagań
- Wybierz artykuły (tabele, widoki, procedury składowane) do replikacji
- W razie potrzeby skonfiguruj filtrowanie i transformację danych
- Skonfiguruj bazy danych subskrybentów
- Utwórz subskrypcje (push lub pull)
- Zainicjuj subskrypcje za pomocą migawki
- Monitoruj agentów replikacji i opóźnienia
Najlepsze dla:
- Dystrybucja danych do wielu serwerów raportujących
- Scenariusze skalowania odczytu z obciążeniami raportowania
- Częściowa dystrybucja danych do zdalnych lokalizacji
- Konsolidacja danych z wielu źródeł
- Scenariusze czasami połączone (replikacja scalająca)
- Wspierająca rola w strategii odzyskiwania po awarii
ZALETY
- Szczegółowa kontrola nad replikowanymi danymi
- Obsługa wielu abonentów
- Elastyczne opcje topologii
- Możliwość replikacji określonych tabel lub kolumn
- Filtrowanie zmniejsza ruch sieciowy
- Obsługuje replikację heterogeniczną (SQL Server do Oracle)
- Działa ze Standard Edition
Wady
- Brak możliwości automatycznego przełączania awaryjnego
- Złożona konfiguracja i zarządzanie
- Możliwość wystąpienia konfliktów replikacji (scalanie i połączenia typu peer-to-peer)
- Opóźnienie w synchronizacji danych
- Zmiany schematu wymagają starannej koordynacji
- Nie jest przeznaczony jako podstawowy roztwór HA
- Rozwiązywanie problemów może być trudne
- Peer-to-Peer wymaga wersji Enterprise Edition
Referencje
- SQL Server Replikacja: Kompletny przewodnik dla administratorów baz danych
- Oficjalny dokument firmy Microsoft: SQL Server replikacja
8. Wysyłka drewna
Log Shipping zapewnia rozwiązanie do odzyskiwania danych po awarii w trybie gotowości i wysokiej dostępności poprzez zautomatyzowane procesy tworzenia kopii zapasowych, kopiowania i przywracania dziennika transakcji, oferując proste i łatwe w obsłudze rozwiązanie.ost-skuteczne podejście do utrzymywania synchronizacji baz danych pomocniczych.
Kluczowe funkcje
- Automatyczne tworzenie kopii zapasowych, kopiowanie i przywracanie zadań za pośrednictwem agenta SQL
- Obsługa wielu serwerów pomocniczych
- Konfigurowalne interwały tworzenia kopii zapasowych i przywracania danych
- Tryb STANDBY umożliwia dostęp do pamięci podrzędnej w trybie tylko do odczytu
- Opóźnione przywracanie dziennika w celu ochrony przed błędami
- Serwer monitorujący do scentralizowanego monitorowania
- Obsługa kompresji dziennika transakcji
Kroki wdrażania
- Upewnij się, że podstawowa baza danych korzysta z modelu pełnego odzyskiwania
- Utwórz pełną kopię zapasową głównej bazy danych
- Przywróć kopię zapasową na serwerze pomocniczym za pomocą NORECOVERY
- Skonfiguruj wysyłanie dziennika w bazie danych głównej
- Określ współdzielony folder kopii zapasowej dostępny dla wszystkich serwerów
- Skonfiguruj harmonogram zadań kopii zapasowej na serwerze podstawowym
- Konfiguruj zadania kopiowania i przywracania na serwerze pomocniczym
- Opcjonalnie skonfiguruj serwer monitora
- Testowanie procedur przełączania awaryjnego
Najlepsze dla:
- Cost-skuteczne rozwiązania odzyskiwania po awarii
- Organizacje posiadające licencję Standard Edition
- Scenariusze tolerujące minuty utraty danych
- Środowiska, w których można wygodnie korzystać z ręcznego przełączania awaryjnego
- Opóźnione odzyskiwanie w celu ochrony przed błędami
- Raportowanie obciążeń roboczych w trybie STANDBY
- Proste wymagania DR bez skomplikowanej infrastruktury
ZALETY
- Prosta konfiguracja i obsługa
- Niskie cost (obsługa edycji standardowej)
- Obsługa wielu serwerów pomocniczych
- Konfigurowalne opóźnienie chroni przed błędami logicznymi
- Raportowanie tylko do odczytu w trybie STANDBY
- Toleruje duże opóźnienia sieciowe
- Minimalny wpływ na serwer główny
- Dobrze ugruntowana, sprawdzona technologia
Wady
- Brak możliwości automatycznego przełączania awaryjnego
- Należy skonfigurować osobno dla każdej bazy danych
- Opóźnienie synchronizacji (minuty do godzin)
- Potencjalna utrata danych w oparciu o interwał tworzenia kopii zapasowych
- Ręczne przełączanie awaryjne zwiększa RTO
- Wymaga SQL Server Agent działający na wszystkich serwerach
- Bazy danych drugorzędne niedostępne podczas przywracania dziennika
- Aplikacje wymagają zmiany ciągu połączenia po przełączeniu awaryjnym
Referencje
- SQL Server Wysyłka kłód: Kompletny przewodnik dla DBA
- Oficjalny dokument firmy Microsoft: Informacje o wysyłce dziennika (SQL Server)
9. Dublowanie bazy danych
Mirroring bazy danych to przestarzałe rozwiązanie zapewniające wysoką dostępność na poziomie bazy danych, które od tego czasu nie doczekało się żadnych ulepszeń SQL Server 2012, choć nadal jest dostępny w aktualnych wersjach. Microsoft zdecydowanie zaleca migrację do Always On Availability Groups w przypadku wszystkich nowych wdrożeń.
Kluczowe funkcje
- Architektura serwera głównego i lustrzanego
- Opcjonalny serwer świadków do automatycznego przełączania awaryjnego
- Dwa tryby pracy: Wysoki poziom bezpieczeństwa i Wysoka wydajność
- Obsługa operacji synchronicznych i asynchronicznych
- Możliwość automatycznej naprawy strony
- Ochrona na poziomie bazy danych
- Obsługa szyfrowania transmisji danych
Kroki wdrażania
- Upewnij się, że baza danych korzysta z modelu pełnego odzyskiwania
- Utwórz pełną kopię zapasową i przywróć ją na serwerze lustrzanym za pomocą NORECOVERY
- Utwórz punkty końcowe lustrzane na zleceniodawcy i lustrze
- Konfigurowanie certyfikatów do uwierzytelniania
- Nawiąż sesję lustrzaną między serwerami
- Opcjonalnie skonfiguruj serwer świadka w celu automatycznego przełączania awaryjnego
- Ustaw tryb pracy (wysoki poziom bezpieczeństwa lub wysoka wydajność)
- Testowanie procedur przełączania awaryjnego
Najlepsze dla:
- Starsze systemy już korzystają z funkcji dublowania baz danych
- Utrzymywanie istniejących konfiguracji do momentu, gdy migracja będzie możliwa
- Nie zaleca się żadnych innych scenariuszy (funkcja jest przestarzała)
ZALETY
- Szybkie automatyczne przełączanie awaryjne w trybie wysokiego bezpieczeństwa z obsługą świadka
- Brak utraty danych w trybie wysokiego bezpieczeństwa
- Automatyczna naprawa strony od partnera
- Prostsze niż grupy dostępności dla pojedynczej bazy danych
- Obsługuje szyfrowanie transmisji
- Ciągłe aktualizacje z minimalnym przestojem
Wady
- Przestarzałe od SQL Server 2012 (może zostać usunięty)
- Konfiguracja i przełączanie awaryjne dla poszczególnych baz danych
- Brak czytelnego lustra (brak możliwości odczytu skali)
- Każda baza danych przełącza się awaryjnie niezależnie
- Wymagana aktualizacja ciągu połączenia po przejściu w tryb failover
- Ograniczone do dwóch serwerów (głównego i lustrzanego)
- Brak ulepszeń i nowych funkcji
- Microsoft zaleca migrację do Always On AG
Referencje
10. Łącze do zarządzanej instancji
Łącze zarządzanej instancji tworzy połączenie hybrydowe pomiędzy SQL Server oraz Azure SQL Managed Instance wykorzystujące technologię rozproszonej grupy dostępności, umożliwiającą replikację danych niemal w czasie rzeczywistym na potrzeby odzyskiwania po awarii, migracji i integracji z chmurą.
Kluczowe funkcje
- Replikacja w czasie niemal rzeczywistym z wykorzystaniem technologii rozproszonego AG
- Replikacja jednokierunkowa (SQL Server 2016-2019 do Azure)
- Replikacja dwukierunkowa z funkcją failback (SQL Server 2022 +)
- Jedna baza danych na łącze (obsługiwane są liczne łącza)
- Repliki możliwe do odczytu w zarządzanej instancji Azure SQL
- Opcja pasywnej repliki DR bez licencji
- Migracja online z minimalnym przestojem
Kroki wdrażania
- Przygotować SQL Server środowisko (VPN lub ExpressRoute do Azure)
- Konfigurowanie zarządzanej instancji Azure SQL
- Włącz funkcję Zawsze włączona AG SQL Server
- Utwórz punkt końcowy kopii lustrzanej bazy danych
- Wymiana certyfikatów pomiędzy SQL Server i MI
- Utwórz łącze do zarządzanej instancji za pomocą programu SSMS lub skryptów
- Sprawdź poprawność replikacji i synchronizacji
- Skonfiguruj routing tylko do odczytu, jeśli używasz go do skalowania odczytu
- Testowanie procedur przełączania awaryjnego
Najlepsze dla:
- Hybrydowe odzyskiwanie po awarii z wykorzystaniem rozwiązań zapasowych w chmurze
- Migracja online do zarządzanej instancji Azure SQL
- Przenoszenie analiz i raportowania do platformy Azure
- Organizacje przyjmujące strategię chmury hybrydowej
- Scenariusze wymagające integracji usług Azure
- Cost optymalizacja z bezlicencyjnym pasywnym DR
ZALETY
- Most wydajna migracja do platformy Azure z minimalnym przestojem
- Prawdziwa migracja online do warstwy krytycznej dla biznesu
- Dwukierunkowe przełączanie awaryjne z SQL Server 2022 +
- Bezlicencyjna pasywna replika DR zmniejsza costs
- Integracja z usługami platformy Azure bez pełnej migracji
- Możliwość skalowania odczytu przy użyciu replik platformy Azure
- Automatyczne kopie zapasowe po stronie platformy Azure
- Dystrybucja geograficzna w regionach Azure
Wady
- Ograniczenie do jednej bazy danych na łącze
- Nie można używać z grupami failover w MI
- Bazy danych systemowych nie zostały zreplikowane
- Obiekty na poziomie instancji wymagają ręcznej synchronizacji
- SQL Server 2016-2019 tylko w jedną stronę (bez możliwości powrotu po awarii)
- Azure costs dla zarządzanej instancji
- Wymagania dotyczące łączności sieciowej (VPN/ExpressRoute)
- Ograniczenia funkcji (brak obsługi tabel plików i strumieni plików)
Referencje
11. Porównanie rozwiązań o wysokiej dostępności
11.1 Tabela porównawcza funkcji
| Cecha | Zawsze włączony AG | Zawiera AG | Rozproszone AG | FCI | Replikacja | Wysyłka kłód | Lustrzane odbicie | Łącze MI |
|---|---|---|---|---|---|---|---|---|
| edycja | Choroby przenoszone drogą płciową | Choroby przenoszone drogą płciową | int | Choroby przenoszone drogą płciową | Choroby przenoszone drogą płciową | Choroby przenoszone drogą płciową | Choroby przenoszone drogą płciową | Choroby przenoszone drogą płciową |
| Poziom ochrony | Baza danych | Baza danych + instancja | Baza danych | Instancja | Baza danych/Obiekty | Baza danych | Baza danych | Baza danych |
| Synchronizacja danych | Synchronizacja/Asynchronizacja | Synchronizacja/Asynchronizacja | Synchronizacja/Asynchronizacja | wspólne | Asynchronizacja | Asynchronizacja | Synchronizacja/Asynchronizacja | Asynchronizacja |
| Automatyczne przełączanie awaryjne | Tak | Tak | Tak | Tak | Nie | Nie | Tak | Nie |
| Odczyt-Skala | Tak | Tak | Tak | Nie | Tak | Ograniczony | Nie | Tak |
| RTO | Sekund | Sekund | Sekund | minut | Instrukcja obsługi | Instrukcja obsługi | Sekund | Instrukcja obsługi |
| RPO | Zero/Min | Zero/Min | Zero/Min | Zero | minimalny | minut | Zero/Min | minimalny |
| Status wsparcia | Aktywna | Aktywna | Aktywna | Aktywna | Aktywna | Aktywna | Nieaktualna | Aktywna |
11.2 Wybierz rozwiązanie HA
Przy wyborze rozwiązania należy wziąć pod uwagę następujące czynniki:
- Wybór rozwiązania w znacznym stopniu zależy od kwestii budżetowych: wymagania dotyczące edycji Enterprise Edition wpływają na licencjonowanieostpodczas gdy potrzeby infrastrukturalne są różne – od kosztownego współdzielonego przechowywania danych dla FCI po serwery masowe dla grup dostępności.
- Złożoność jest znacząco różna: Log Shipping oferuje najprostszą implementację, podczas gdy rozproszone grupy dostępności wymagają rozległej wiedzy specjalistycznej.
- Wymagania RTO determinują wybór technologii. Sekundowe przestoje wymagają ciągłych grup dostępności (ang. Always On Availability Groups, FCI) z automatycznym przełączaniem awaryjnym. Tolerancja minutowa pozwala na ręczne rozwiązania przełączania awaryjnego, takie jak Log Shipping.
- Wymagania RPO są równie ważne: zerowa utrata danych wymusza rozwiązania synchroniczne, a tolerancja minutowa umożliwia Log Shipping.
- Na wybór optymalnego rozwiązania wpływają ograniczenia infrastruktury, potrzeby dotyczące skalowania odczytów, wymogi dotyczące rozmieszczenia geograficznego i scenariusze hybrydowej chmury.
12. Najlepsze praktyki dot SQL Server Duża dostępność
12.1 Planowanie i projektowanie
Oceń wymagania biznesowe poprzez dokładną analizę RTO i RPO dla każdej bazy danych. Wybierz odpowiednie rozwiązania, które odpowiadają wymaganiom, zamiast domyślnie korzystać z m.ost Zaawansowane opcje. Planuj lokalną wysoką dostępność i geograficzne odzyskiwanie po awarii, wykorzystując podejścia warstwowe. Kompleksowo udokumentuj architekturę, w tym diagramy sieci, procedury przełączania awaryjnego i podręczniki odzyskiwania.
12.2 Wytyczne dotyczące wdrożenia
Regularnie testuj procedury przełączania awaryjnego za pomocą zaplanowanych testów i symulowanych awarii, aby je zweryfikować SQL Server Rozwiązania o wysokiej dostępności i gotowość zespołu. Monitoruj stan i wydajność w sposób ciągły, korzystając z SQL ServerWbudowane narzędzia takie jak SQL Server Profiler i DMV. Skonfiguruj kompleksowe alerty dotyczące opóźnień synchronizacji, zdarzeń awaryjnych i pogorszenia stanu. Utrzymuj SQL Server strategie tworzenia kopii zapasowych Pomimo wdrożenia HA, kopie zapasowe pozostają ostatnią linią obrony przed uszkodzeniami logicznymi i przypadkowymi usunięciami. Aktualizuj systemy za pomocą aktualizacji zbiorczych, poprawek bezpieczeństwa i aktualizacji oprogramowania sprzętowego. Okresowo weryfikuj procedury odzyskiwania poprzez rzeczywiste przywracanie i testowanie aplikacji oraz dowiedz się, jak radzić sobie z takimi scenariuszami, jak: bazy danych utknęły w trybie odzyskiwania.
12.3 Monitorowanie i konserwacja
Skorzystaj z narzędzi takich jak SQL Server Activity monitor, SQL Server monitor wydajnościi Dynamiczne widoki zarządzania w celu monitorowania stanu zdrowia i uruchomienia DBCC CHECKDB Regularnie weryfikuj integralność bazy danych. Wykorzystaj panel Always On do wizualnej oceny stanu grupy dostępności. Uważnie monitoruj opóźnienia synchronizacji, szczególnie w przypadku replik asynchronicznych i przesyłania dzienników. Dokładnie śledź zdarzenia związane z przełączaniem awaryjnym za pomocą… SQL Server Rozszerzone wydarzenia i analizuj przyczyny występowania wzorców. Ustalaj poziomy bazowe wydajności dla normalnego działania i monitoruj odchylenia wskazujące na potencjalne problemy. Przeprowadzaj regularne przeglądy planowania wydajności, aby upewnić się, że infrastruktura obsługuje rosnące obciążenia.
13. FAQ
P: Jaka jest różnica między wysoką dostępnością a odzyskiwaniem po awarii? SQL Server?
A: Wysoka dostępność minimalizuje przestoje w przypadku lokalnych awarii w centrum danych, zazwyczaj dzięki automatycznemu przełączaniu awaryjnemu i czasom RTO wynoszącym sekundy lub minuty. Odzyskiwanie po awarii chroni przed katastrofami regionalnymi, zazwyczaj z ręcznym przełączaniem awaryjnym i dłuższymi czasami RTO, ale obejmuje zdarzenia wpływające na całe obiekty.
P: Jaka jest różnica pomiędzy rozwiązaniami o wysokiej dostępności (HA) a rozwiązaniami o dużej skali odczytu?
A: Rozwiązania wysokiej dostępności zapewniają dostępność baz danych w przypadku awarii, koncentrując się na czasie sprawności i możliwościach automatycznego przełączania awaryjnego. Rozwiązania typu „Read-Scale” poprawiają wydajność zapytań poprzez dystrybucję obciążeń tylko do odczytu na wiele replik baz danych, koncentrując się na przepustowości i czasie reakcji. Chociaż służą one różnym celom, ta sama technologia, jak Always On Availability Groups, może zapewnić obie korzyści jednocześnie: odczytywalne repliki wtórne oferują możliwości skalowania odczytu, a jednocześnie pełnią funkcję przełączania awaryjnego. taruzyskuje wysoką dostępność.
P: Który? SQL Server Które rozwiązanie o wysokiej dostępności najlepiej spełni moje potrzeby?
A: Najlepsze rozwiązanie zależy od RTO i RPO tarPobiera, budżet, dostępność edycji, infrastrukturę i wiedzę specjalistyczną. Grupy Always On Availability odpowiadają most scenariusze korporacyjne, podczas gdy Log Shipping sprawdza się dobrze w przypadku cost-wrażliwych środowisk. Oceń wymagania na podstawie tabeli porównawczej.
P: Czy grupy dostępności Always On wymagają wersji Enterprise Edition?
A: Edycja Standard obsługuje podstawowe grupy dostępności z istotnymi ograniczeniami: jedna baza danych na grupę, jedna replika zapasowa i brak repliki zapasowej z możliwością odczytu. Pełna funkcjonalność, obejmująca wiele baz danych, osiem baz zapasowych i repliki z możliwością odczytu, wymaga Edycji Enterprise.
P: Czy mogę korzystać z usługi Log Shipping z SQL Server Edycja standardowa?
A: Tak, wysyłka dziennika jest w pełni obsługiwana w wersji Standard, co czyni ją atrakcyjną opcjąost-skuteczne rozwiązanie odzyskiwania danych po awarii dla organizacji nie posiadających licencji Enterprise Edition.
P: Jaka jest różnica między grupami dostępności Always On a funkcją dublowania bazy danych?
A: Funkcja dublowania baz danych jest przestarzała i działa na poziomie pojedynczej bazy danych bez dostępu do odczytu z poziomu bazy wtórnej. Grupy dostępności Always On obsługują grupy baz danych, do ośmiu baz wtórnych, repliki z możliwością odczytu i ulepszone monitorowanie. Microsoft zaleca migrację do Always On.
P: Jak wybierać między instancjami klastra trybu failover a grupami dostępności?
A: Wybierz FCI, aby zapewnić ochronę na poziomie instancji z infrastrukturą współdzielonej pamięci masowej. Wybierz grupy dostępności, aby zapewnić ochronę na poziomie bazy danych, skalowalność odczytu i dystrybucję geograficzną bez współdzielonej pamięci masowej. Organizacje często łączą oba te rozwiązania, aby zapewnić kompleksową ochronę.
P: Czy mogę połączyć wiele SQL Server rozwiązania o wysokiej dostępności?
O: Tak, łączenie rozwiązań jest powszechne. Instancje FCI mogą służyć jako repliki grup dostępności, zapewniając lokalną wysoką dostępność na poziomie instancji i geograficzne odzyskiwanie danych na poziomie bazy danych. Przesyłanie dzienników może uzupełniać grupy dostępności, zapewniając dodatkową ochronę zdalną. Dokładnie przetestuj połączone konfiguracje.
P: Jaka jest różnica między replikacją synchroniczną i asynchroniczną?
A: Replikacja synchroniczna oczekuje na wtórne potwierdzenie przed zatwierdzeniem, gwarantując zerową utratę danych, ale potencjalnie wprowadzając opóźnienie. Replikacja asynchroniczna przebiega bez oczekiwania, optymalizując wydajność, ale narażając na potencjalną utratę danych podczas przełączania awaryjnego.
P: Czy nadal potrzebuję kopii zapasowych, jeśli mam SQL Server Czy skonfigurowano wysoką dostępność?
O: Zdecydowanie tak. Wysoka dostępność chroni przed awariami sprzętu, ale nie chroni przed uszkodzeniami logicznymi, przypadkowymi usunięciami ani złośliwymi działaniami replikującymi się na wszystkie kopie. Kopie zapasowe pozostają niezbędne do odzyskiwania danych z określonego punktu w czasie i zapewnienia zgodności z przepisami.
P: Czy nadal potrzebuję kopii zapasowych, jeśli mam SQL Server Czy skonfigurowano wysoką dostępność?
O: Zdecydowanie tak. Wysoka dostępność chroni przed awariami sprzętu, ale nie chroni przed uszkodzeniem bazy danych, przypadkowym usunięciem danych ani złośliwymi działaniami. Kopie zapasowe pozostają niezbędne do odzyskiwania danych z określonego punktu w czasie i zapewnienia zgodności z przepisami. W przypadku uszkodzenia plików bazy danych, a kopie zapasowe są niedostępne lub również uszkodzone, konieczne jest specjalistyczne… Oprogramowanie do naprawy baz danych SQL może pomóc odzyskać dane z uszkodzonych plików MDF, NDF i kopii zapasowych.
P: Czym jest zamknięta grupa dostępności i czym różni się od zwykłej grupy dostępności?
A: Grupy dostępności w formie zamkniętej, wprowadzone w SQL Server 2022, automatycznie synchronizuje obiekty na poziomie instancji, takie jak loginy, zadania i metadane. Standardowe grupy dostępności synchronizują tylko obiekty bazy danych, co wymaga ręcznej replikacji obiektów instancji.
P: Czy mogę replikować dane z SQL Server do usługi Azure SQL Managed Instance?
Odp.: Tak, Managed Instance Link zapewnia hybrydową replikację pomiędzy SQL Server i Azure. SQL Server W latach 2016–2019 obsługiwana jest replikacja jednokierunkowa, podczas gdy SQL Server Wersja 2022+ umożliwia dwukierunkową replikację z funkcją failback na potrzeby odzyskiwania po awarii, migracji i scenariuszy hybrydowych.
P: Co się dzieje z SQL Server Zadania agenta podczas przełączania awaryjnego?
A: W przypadku tradycyjnych grup dostępności zadania muszą być tworzone ręcznie na replikach pomocniczych. Grupy dostępności w formie zamkniętej (SQL Server 2022+) automatycznie synchronizują zadania. Instancje klastra trybu failover obejmują zadania w ramach ochrony na poziomie instancji.
14. Wniosek
SQL Server oferuje kompleksowe rozwiązania o wysokiej dostępności, spełniające zróżnicowane wymagania, od baz danych działowych po systemy korporacyjne o znaczeniu krytycznym. Każde rozwiązanie oferuje odmienne możliwości i kompromisy, które administratorzy baz danych muszą rozumieć, aby podejmować świadome decyzje.
Always On Availability Groups to sztandarowa technologia nowoczesnych wdrożeń, przy czym Contained Availability Groups upraszczają administrację, a Distributed Availability Groups umożliwiają realizację zaawansowanych scenariuszy wieloplatformowych. Instancje klastra failover nadal zaspokajają potrzeby ochrony na poziomie instancji, a Log Shipping pozostaje istotny dla…ostscenariuszy wrażliwych. Managed Instance Link otwiera możliwości hybrydowej chmury łączącej rozwiązania lokalne SQL Server z Azure.
Dopasowanie rozwiązań do konkretnych potrzeb biznesowych stanowi kluczowy czynnik sukcesu. Nie ma uniwersalnego podejścia. Organizacje muszą starannie ocenić wymagania dotyczące RTO i RPO, ograniczenia budżetowe, możliwości infrastruktury i wiedzę administracyjną. Często najlepsza architektura łączy wiele rozwiązań, zapewniając kompleksową ochronę. Zastanów się, jak Twoja strategia HA wpisuje się w szersze plany wdrażania chmury i zapoznaj się z dedykowanymi artykułami, aby uzyskać szczegółowe wskazówki dotyczące wdrożenia. SQL Server Infrastruktura zapewnia niezawodność, której wymaga Twoja firma.
O autorze
Yuan Sheng jest starszym administratorem baz danych (DBA) z ponad 10-letnim doświadczeniem w SQL Server środowiskach i zarządzaniu bazami danych przedsiębiorstw. Z powodzeniem rozwiązał setki scenariuszy odzyskiwania baz danych w firmach z branży usług finansowych, opieki zdrowotnej i produkcji.
Yuan specjalizuje się w SQL Server Odzyskiwanie baz danych, rozwiązania wysokiej dostępności i optymalizacja wydajności. Jego bogate doświadczenie praktyczne obejmuje zarządzanie wieloterabajtowymi bazami danych, wdrażanie grup Always On Availability Groups oraz opracowywanie zautomatyzowanych strategii tworzenia kopii zapasowych i odzyskiwania danych dla systemów biznesowych o znaczeniu krytycznym.
Dzięki swojej wiedzy technicznej i praktycznemu podejściu Yuan skupia się na tworzeniu kompleksowych przewodników, które pomagają administratorom baz danych i specjalistom IT rozwiązywać złożone problemy SQL Server skutecznie stawia czoła wyzwaniom. Jest na bieżąco z najnowszymi SQL Server wydania i rozwijające się technologie baz danych firmy Microsoft, regularnie testując scenariusze odzyskiwania, aby mieć pewność, że jego zalecenia odzwierciedlają najlepsze praktyki stosowane w praktyce.
Masz pytania dot SQL Server Potrzebujesz pomocy w odzyskiwaniu danych lub dodatkowych wskazówek dotyczących rozwiązywania problemów z bazą danych? Yuan zaprasza opinie i sugestie w celu udoskonalenia tych zasobów technicznych.