Przywracanie bazy danych z kopii zapasowej w usłudze Azure SQL Database
Dotyczy: Azure SQL Database
Ten artykuł zawiera kroki odzyskiwania dowolnej bazy danych z kopii zapasowej w usłudze Azure SQL Database, w tym baz danych w warstwie Hiperskala.
Omówienie
Automatyczne kopie zapasowe bazy danych pomagają chronić bazy danych przed błędami użytkowników i aplikacji, przypadkowym usunięciem bazy danych i długotrwałymi awariami. Ta wbudowana funkcja jest dostępna dla wszystkich warstw usług i rozmiarów obliczeniowych. Dostępne są następujące opcje odzyskiwania bazy danych za pośrednictwem automatycznych kopii zapasowych:
- Utwórz nową bazę danych na tym samym serwerze, odzyskaną do określonego punktu w czasie w okresie przechowywania z przywracaniem do punktu w czasie.
- Utwórz bazę danych na tym samym serwerze, odzyskaną do czasu usunięcia usuniętej bazy danych.
- Utwórz nową bazę danych na dowolnym serwerze w tym samym regionie, odzyskaną do czasu ostatniego utworzenia kopii zapasowej z przywracaniem długoterminowego przechowywania lub przywracaniem geograficznym.
- Utwórz nową bazę danych na dowolnym serwerze w dowolnym innym regionie, odzyskaną do punktu najnowszych replikowanych kopii zapasowych z przywracaniem geograficznym.
Jeśli skonfigurowano długoterminowe przechowywanie (LTR), możesz również utworzyć nową bazę danych na podstawie dowolnej kopii zapasowej przechowywania długoterminowego na dowolnym serwerze.
Ważne
- Nie można zastąpić istniejącej bazy danych podczas przywracania.
- Operacje przywracania bazy danych nie przywracają tagów oryginalnej bazy danych.
W przypadku korzystania z warstwy usługi Standardowa lub Premium w modelu zakupów jednostek DTU przywracanie bazy danych może wiązać się z dodatkowymi kosztami magazynowania. Dodatkowy koszt występuje, gdy maksymalny rozmiar przywróconej bazy danych jest większy niż ilość miejsca w magazynie uwzględniona w docelowej warstwie usługi i celu usługi bazy danych.
Aby uzyskać szczegółowe informacje o cenach dodatkowego magazynu, zobacz stronę cennika usługi SQL Database. Jeśli rzeczywista ilość używanego miejsca jest mniejsza niż ilość miejsca w magazynie, możesz uniknąć tego dodatkowego kosztu, ustawiając maksymalny rozmiar bazy danych na uwzględniona ilość.
Czas odzyskiwania
Kilka czynników wpływa na czas odzyskiwania w celu przywrócenia bazy danych za pomocą automatycznych kopii zapasowych bazy danych:
- Rozmiar bazy danych
- Rozmiar obliczeniowy bazy danych
- Liczba zaangażowanych dzienników transakcji
- Ilość działań, które należy odtworzyć w celu odzyskania do punktu przywracania
- Przepustowość sieci, jeśli przywracanie jest w innym regionie
- Liczba współbieżnych żądań przywracania przetwarzanych w regionie docelowym
W przypadku dużej lub bardzo aktywnej bazy danych przywracanie może potrwać kilka godzin. Długotrwała awaria w regionie może spowodować dużą liczbę żądań przywracania geograficznego na potrzeby odzyskiwania po awarii. Jeśli istnieje wiele żądań, czas odzyskiwania poszczególnych baz danych może się wydłużyć. Większość operacji przywracania bazy danych kończy się w czasie krótszym niż 12 godzin.
W przypadku pojedynczej subskrypcji masz następujące ograniczenia dotyczące liczby współbieżnych żądań przywracania. Te ograniczenia mają zastosowanie do dowolnej kombinacji przywracania do punktu w czasie, przywracania geograficznego i przywracania z kopii zapasowej przechowywanej długoterminowo.
Opcja wdrożenia | Maksymalna liczba przetwarzanych współbieżnych żądań | Maksymalna liczba przesłanych współbieżnych żądań |
---|---|---|
Pojedyncza baza danych (na subskrypcję) | 30 | 100 |
Pula elastyczna (na pulę) | 100 | 2000 |
Uprawnienia
Aby odzyskać przy użyciu automatycznych kopii zapasowych, należy wykonać jedną z następujących czynności:
- Członek roli Współautor lub Współautor programu SQL Server w subskrypcji lub grupie zasobów zawierającej serwer logiczny
- Właściciel subskrypcji lub grupy zasobów
Aby uzyskać więcej informacji, zobacz Kontrola dostępu oparta na rolach platformy Azure: role wbudowane.
Odzyskiwanie można odzyskać przy użyciu witryny Azure Portal, programu PowerShell lub interfejsu API REST. Nie można użyć języka Transact-SQL.
Przywracanie do punktu w czasie
W okresie przechowywania można przywrócić dowolną bazę danych do wcześniejszego punktu w czasie. Żądanie przywracania może określać dowolną warstwę usługi lub rozmiar obliczeniowy dla przywróconej bazy danych. Podczas przywracania bazy danych do elastycznej puli upewnij się, że masz wystarczające zasoby w puli, aby pomieścić bazę danych.
Po zakończeniu przywracania zostanie utworzona nowa baza danych na tym samym serwerze co oryginalna baza danych. Przywrócona baza danych jest naliczana według normalnych stawek na podstawie warstwy usług i rozmiaru obliczeniowego. Opłaty nie są naliczane, dopóki przywracanie bazy danych nie zostanie ukończone.
Zazwyczaj przywracasz bazę danych do wcześniejszego punktu na potrzeby odzyskiwania. Przywróconą bazę danych można traktować jako zamiennik oryginalnej bazy danych lub użyć jej jako źródła danych w celu zaktualizowania oryginalnej bazy danych.
Ważne
- Możesz wykonać przywracanie bazy danych do tego samego serwera do punktu w czasie. Przywracanie między serwerami, między subskrypcjami i przywracaniem między punktami w czasie między lokalizacjami geograficznymi nie jest obecnie obsługiwane. Aby przywrócić bazę danych do innego regionu przy użyciu kopii zapasowych replikowanych geograficznie, zobacz Przywracanie geograficzne.
- Nie można wykonać przywracania do punktu w czasie w odniesieniu do pomocniczej bazy danych z replikacją geograficzną. Można to zrobić tylko w odniesieniu do podstawowej bazy danych.
- Parametr
BackupFrequency
nie jest obsługiwany w przypadku baz danych w warstwie Hiperskala. - Operacje przywracania bazy danych intensywnie korzystają z zasobów i mogą wymagać warstwy usługi S3 lub nowszej dla bazy danych przywracania (docelowej). Po zakończeniu przywracania baza danych lub elastyczna pula mogą być skalowane w dół, jeśli jest to wymagane.
Wymiana bazy danych
Jeśli chcesz, aby przywrócona baza danych zastępuje oryginalną bazę danych, określ rozmiar obliczeniowy i warstwę usługi oryginalnej bazy danych. Następnie można zmienić nazwę oryginalnej bazy danych i nadać przywróconej bazie danych oryginalną nazwę za pomocą polecenia ALTER DATABASE w języku T-SQL.
Odzyskiwanie danych
Jeśli planujesz pobrać dane z przywróconej bazy danych w celu odzyskania sprawności po błędzie użytkownika lub aplikacji, musisz napisać i uruchomić skrypt odzyskiwania danych, który wyodrębnia dane z przywróconej bazy danych i ma zastosowanie do oryginalnej bazy danych. Chociaż operacja przywracania może zająć dużo czasu, przywracanie bazy danych jest widoczne na liście baz danych w całym procesie przywracania.
Jeśli usuniesz bazę danych podczas przywracania, operacja przywracania zostanie anulowana. Nie zostaną naliczone opłaty za bazę danych, która nie ukończyła przywracania.
- Witryna Azure Portal
- Interfejs wiersza polecenia platformy Azure
- Program PowerShell
- Interfejs API REST
Aby odzyskać bazę danych do punktu w czasie przy użyciu witryny Azure Portal, otwórz stronę przeglądu bazy danych i wybierz pozycję Przywróć na pasku narzędzi, aby otworzyć stronę Tworzenie bazy danych SQL Database — przywracanie bazy danych :
Na stronie Tworzenie bazy danych SQL Database — przywracanie określ źródło kopii zapasowej, a następnie wybierz punkt w czasie, z którego zostanie utworzona nowa baza danych. Ponieważ wybrana baza danych ma zostać przywrócona do bieżącego serwera, źródłowa baza danych i serwer docelowy są wyszarywane.
Przywracania długoterminowych kopii zapasowych
Aby wykonać operację przywracania na długoterminowej kopii zapasowej, możesz użyć witryny Azure Portal, interfejsu wiersza polecenia platformy Azure, programu Azure PowerShell lub interfejsu API REST. Aby uzyskać więcej informacji, zobacz Przywracanie długoterminowej kopii zapasowej.
- Witryna Azure Portal
- Interfejs wiersza polecenia platformy Azure
- Program PowerShell
- Interfejs API REST
Aby odzyskać długoterminową kopię zapasową przy użyciu witryny Azure Portal, przejdź do serwera logicznego. Wybierz pozycję Kopie zapasowe w obszarze Zarządzanie danymi, a następnie wybierz pozycję Zarządzaj w obszarze Dostępne kopie zapasowe LTR dla bazy danych, którą próbujesz przywrócić.
Przywracanie usuniętej bazy danych
Usuniętą bazę danych można przywrócić do czasu usunięcia lub wcześniejszego punktu w czasie na tym samym serwerze przy użyciu witryny Azure Portal, interfejsu wiersza polecenia platformy Azure, programu Azure PowerShell i interfejsu API REST.
Ważne
Jeśli usuniesz serwer, wszystkie jego bazy danych i kopie zapasowe pitr również zostaną usunięte. Nie można przywrócić usuniętego serwera i nie można przywrócić usuniętych baz danych z kopii zapasowych PITR. Jeśli skonfigurowano kopie zapasowe LTR dla tych baz danych, możesz użyć tych kopii zapasowych do przywrócenia baz danych na innym serwerze.
- Witryna Azure Portal
- Interfejs wiersza polecenia platformy Azure
- Program PowerShell
- Interfejs API REST
Aby odzyskać usuniętą bazę danych do czasu usunięcia przy użyciu witryny Azure Portal, otwórz stronę przeglądu serwera i wybierz pozycję Usunięte bazy danych. Wybierz usuniętą bazę danych, którą chcesz przywrócić, a następnie wprowadź nazwę nowej bazy danych, która zostanie utworzona przy użyciu danych przywróconych z kopii zapasowej.
Napiwek
Wyświetlenie ostatnio usuniętych baz danych na stronie Usunięte bazy danych w witrynie Azure Portal może potrwać kilka minut lub jeśli chcesz programowo wyświetlić usunięte bazy danych.
Przywracanie geograficzne
Przywracanie geograficzne umożliwia przywrócenie usuniętej bazy danych przy użyciu witryny Azure Portal, interfejsu wiersza polecenia platformy Azure, programu Azure PowerShell i interfejsu API REST.
Ważne
- Przywracanie geograficzne jest dostępne tylko dla baz danych skonfigurowanych z geograficznie nadmiarowym magazynem kopii zapasowych. Jeśli obecnie nie używasz replikowanych geograficznie kopii zapasowych bazy danych, możesz to zmienić, konfigurując nadmiarowość magazynu kopii zapasowych.
- Przywracanie geograficzne można wykonać tylko w bazach danych znajdujących się w tej samej subskrypcji.
Przywracanie geograficzne używa kopii zapasowych replikowanych geograficznie jako źródła. Bazę danych można przywrócić na dowolnym serwerze logicznym w dowolnym regionie platformy Azure z najnowszych kopii zapasowych replikowanych geograficznie. Możesz zażądać przywrócenia geograficznego, nawet jeśli awaria bazy danych lub całego regionu jest niedostępna.
Przywracanie geograficzne to domyślna opcja odzyskiwania, gdy baza danych jest niedostępna z powodu zdarzenia w regionie hostingu. Bazę danych można przywrócić na serwerze w dowolnym innym regionie.
Występuje opóźnienie między utworzeniem kopii zapasowej a replikacją geograficzną do obiektu blob platformy Azure w innym regionie. W związku z tym przywrócona baza danych może być maksymalnie jedna godzina za oryginalną bazą danych. Na poniższej ilustracji przedstawiono przywracanie bazy danych z ostatniej dostępnej kopii zapasowej w innym regionie.
- Witryna Azure Portal
- Interfejs wiersza polecenia platformy Azure
- Program PowerShell
- Interfejs API REST
W witrynie Azure Portal utworzysz nową pojedynczą bazę danych i wybierzesz dostępną kopię zapasową przywracania geograficznego. Nowo utworzona baza danych zawiera dane kopii zapasowej przywrócone geograficznie.
Aby przywrócić geograficznie pojedynczą bazę danych z witryny Azure Portal w wybranym regionie i serwerze, wykonaj następujące kroki:
- Otwórz okienko Tworzenie bazy danych SQL w witrynie Azure Portal. Na karcie Podstawy wprowadź wymagane informacje.
- Wybierz pozycję Dodatkowe ustawienia.
- W obszarze Użyj istniejących danych wybierz pozycję Kopia zapasowa.
- Wybierz kopię zapasową z listy dostępnych kopii zapasowych przywracania geograficznego.
Ukończ proces tworzenia bazy danych na podstawie kopii zapasowej. Podczas tworzenia bazy danych w usłudze Azure SQL Database zawiera przywróconą kopię zapasową przywracania geograficznego.
Zagadnienia przywracania geograficznego
Aby uzyskać więcej informacji na temat korzystania z przywracania geograficznego, zobacz Odzyskiwanie przy użyciu przywracania geograficznego.
Uwaga
Aby uzyskać szczegółowe informacje na temat odzyskiwania po awarii, zobacz Wskazówki dotyczące odzyskiwania po awarii oraz lista kontrolna dotycząca wysokiej dostępności i odzyskiwania po awarii.
Przywracanie geograficzne to najbardziej podstawowe rozwiązanie odzyskiwania po awarii dostępne w usłudze SQL Database. Opiera się na automatycznie tworzonych geograficznie replikowanych kopiach zapasowych z celem punktu odzyskiwania (RPO) do 1 godziny i szacowanym celem czasu odzyskiwania (RTO) do 12 godzin. Nie gwarantuje to, że docelowy region będzie miał pojemność do przywrócenia baz danych po awarii regionalnej, ponieważ prawdopodobny jest gwałtowny wzrost zapotrzebowania. Jeśli aplikacja używa stosunkowo małych baz danych i nie ma krytycznego dla firmy, przywracanie geograficzne jest odpowiednim rozwiązaniem odzyskiwania po awarii.
W przypadku aplikacji o krytycznym znaczeniu dla działania firmy, które wymagają dużych baz danych i muszą zapewnić ciągłość działania, użyj grup trybu failover. Ta funkcja oferuje znacznie niższy cel punktu odzyskiwania i cel czasu odzyskiwania, a pojemność jest zawsze gwarantowana.
Aby uzyskać więcej informacji na temat opcji ciągłości działania, zobacz Omówienie ciągłości działania.
Uwaga
Jeśli planujesz użycie funkcji przywracania geograficznego jako rozwiązania odzyskiwania po awarii, zalecamy przeprowadzenie okresowych prób w celu sprawdzenia tolerancji aplikacji na wszelkie straty ostatnich modyfikacji danych wraz ze wszystkimi aspektami operacyjnymi procedury odzyskiwania.
Przywracanie bazy danych na inny serwer
Aby przywrócić bazę danych na inny serwer, możesz użyć następujących metod:
- Przywracania długoterminowych kopii zapasowych
- Przywracanie geograficzne
- Kopiowanie bazy danych
- Aktywna replikacja geograficzna
Powiązana zawartość
- Automatyczne kopie zapasowe
- Długoterminowe przechowywanie
- Aktywna replikacja geograficzna
- Omówienie i najlepsze rozwiązania dotyczące grup trybu failover