Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:Azure SQL Managed Instance
W tym artykule opisano, jak wykonać przywracanie bazy danych do określonego punktu w czasie w usłudze Azure SQL Managed Instance. Możesz użyć przywracania do punktu w czasie, aby utworzyć bazę danych będącą kopią bazy danych z określonego wcześniejszego momentu.
Omówienie
Przywracanie do punktu w czasie jest przydatne w scenariuszach odzyskiwania. Na przykład w przypadku zdarzeń spowodowanych błędem lub niepowodzeniem albo gdy dane nie są ładowane poprawnie lub jeśli kluczowe dane zostaną usunięte. Możesz również użyć go po prostu do testowania i inspekcji wdrożenia bazy danych. Pliki kopii zapasowej platformy Azure są przechowywane przez 7 do 35 dni w zależności od ustawień bazy danych.
Możesz użyć przywracania do punktu w czasie, aby przywrócić bazę danych w następujących scenariuszach:
- Z istniejącej bazy danych
- Z usuniętej bazy danych
- Do tego samego zarządzanego wystąpienia SQL lub do innego zarządzanego wystąpienia SQL
- Do zarządzanego wystąpienia SQL w tej samej subskrypcji lub do zarządzanego wystąpienia SQL w innej subskrypcji
W poniższej tabeli przedstawiono scenariusze przywracania do punktu w czasie dla usługi SQL Managed Instance:
| Scenariusz | Azure Portal | Interfejs wiersza polecenia platformy Azure | PowerShell |
|---|---|---|---|
| Przywracanie istniejącej bazy danych do tego samego wystąpienia zarządzanego SQL | Tak | Tak | Tak |
| Przywracanie istniejącej bazy danych do innego wystąpienia zarządzanego SQL | Tak | Tak | Tak |
| Przywracanie usuniętej bazy danych do tego samego wystąpienia zarządzanego SQL | Tak | Tak | Tak |
| Przywracanie usuniętej bazy danych do innego wystąpienia zarządzanego SQL | Tak | Tak | Tak |
| Przywróć istniejącą bazę danych do zarządzanego wystąpienia SQL w innej subskrypcji | Tak | Tak | Tak |
| Przywracanie usuniętej bazy danych na wystąpienie zarządzane SQL w innej subskrypcji | Tak | Tak | Tak |
Uprawnienia
Aby odzyskać bazę danych, musisz być jednym z poniższych:
- Członek roli Współautor SQL Server lub roli Współautor wystąpienia zarządzanego SQL (w zależności od lokalizacji docelowej odzyskiwania) w subskrypcji
- Właściciel subskrypcji
Aby przywrócić bazę danych do innej docelowej subskrypcji, jeśli nie masz roli Współautor wystąpienia zarządzanego SQL, musisz również mieć następujące uprawnienia:
- Microsoft.Sql/managedInstances/databases/readBackups/action w źródłowym wystąpieniu zarządzanym SQL.
- Microsoft.Sql/managedInstances/crossSubscriptionPITR/action w docelowym wystąpieniu zarządzanym SQL.
Aby uzyskać więcej informacji, zobacz Wbudowane role platformy Azure.
Ograniczenia
Uwaga
Użyj bieżącej wersji wywołania interfejsu API tworzenia lub aktualizowania dla wszystkich operacji przywracania bazy danych.
Te ograniczenia dotyczą przywracania do punktu w czasie w usłudze SQL Managed Instance:
Nie można użyć przywracania do punktu w czasie, aby odzyskać całe wdrożenie usługi SQL Managed Instance. Przywracanie do punktu w czasie służy tylko do tworzenia kopii bazy danych hostowanej w usłudze SQL Managed Instance.
Ograniczenia dotyczące przywracania do określonego momentu w czasie zależą od tego, czy baza danych jest przywracana do wystąpienia zarządzanego SQL w tej samej subskrypcji, czy do wystąpienia zarządzanego SQL w innej subskrypcji.
Gdy zasady punktów końcowych usługi są włączone dla usługi Azure SQL Managed Instance, zastosowanie zasady punktów końcowych usługi do podsieci uniemożliwia przywracanie do określonego punktu w czasie z wystąpień znajdujących się w innych podsieciach.
Ostrzeżenie
Należy pamiętać o rozmiarze magazynu danych wystąpienia zarządzanego SQL. W zależności od rozmiaru danych do przywrócenia może zabraknąć miejsca do magazynowania w zarządzanym wystąpieniu SQL. Jeśli nie masz wystarczającej ilości miejsca do magazynowania w wystąpieniu zarządzanym SQL dla przywróconych danych, użyj innego podejścia.
Przywracanie do tej samej subskrypcji
W przypadku przywrócenia z jednego wystąpienia zarządzanego SQL do innego wystąpienia zarządzanego SQL w tej samej subskrypcji platformy Azure oba wystąpienia zarządzane SQL muszą znajdować się w tym samym regionie. Obecnie przywracanie między regionami nie jest obsługiwane.
Przywracanie do innej subskrypcji
Przywracanie kopii zapasowej do określonego momentu między subskrypcjami ma następujące ograniczenia:
Obie subskrypcje muszą znajdować się w tym samym regionie.
Obie subskrypcje muszą znajdować się w tym samym tenantcie.
Typ subskrypcji musi być jednym z następujących typów: Enterprise Agreement, Dostawca rozwiązań w chmurze, Microsoft Certified Partner lub płatność zgodnie z rzeczywistym użyciem.
Akcji przywracania można używać tylko w wystąpieniu podstawowym.
Kopię zapasową można przywrócić tylko z regionu podstawowego. Przywracanie bazy danych z regionu pomocniczego replikowanego geograficznie nie jest obsługiwane w przypadku przywracania do punktu w czasie między subskrypcjami.
Użytkownik, który wykonuje operację przywracania, musi mieć przypisaną rolę Współautor wystąpienia zarządzanego SQL lub następujące jawne uprawnienia:
- Microsoft.Sql/managedInstances/databases/readBackups/action w źródłowym wystąpieniu zarządzanym SQL.
- Microsoft.Sql/managedInstances/crossSubscriptionPITR/action w docelowym wystąpieniu zarządzanym SQL.
Jeśli używasz własnego klucza (BYOK), klucz musi być obecny w obu subskrypcjach.
Przywracanie istniejącej bazy danych
Istniejącą bazę danych można przywrócić w tej samej subskrypcji przy użyciu witryny Azure Portal, programu PowerShell lub interfejsu wiersza polecenia platformy Azure. Jeśli przywracasz do innego wystąpienia zarządzanego w tej samej subskrypcji przy użyciu programu PowerShell lub interfejsu wiersza polecenia Azure, upewnij się, że określisz właściwości zasobu docelowego wystąpienia zarządzanego SQL. Baza danych jest domyślnie przywracana do tego samego wystąpienia.
W przypadku przywrócenia do innej subskrypcji wywołanie interfejsu API Create or Update w wersji 5.0.2022 lub nowszej , które stanowi element akcji przywracania, musi zawierać następujące wartości:
restorePointInTimecrossSubscriptionTargetManagedInstanceId- I albo
crossSubscriptionSourceDatabaseIdlubcrossSubscriptionRestorableDroppedDatabaseId.
Aby przywrócić istniejącą bazę danych, możesz to zrobić, przechodząc do strony bazy danych w witrynie Azure Portal i wybierając pozycję Przywróć.
Alternatywnie, aby przywrócić bazę danych, możesz wykonać następujące kroki:
Zaloguj się w witrynie Azure Portal.
Przejdź do docelowego wystąpienia zarządzanego SQL, do którego planujesz przywrócić bazę danych.
Na stronie Przegląd wybierz pozycję + Nowa baza danych, aby otworzyć stronę Tworzenie usługi Azure SQL Managed Database.
Na karcie Podstawy na stronie Tworzenie usługi Azure SQL Managed Database podaj szczegóły subskrypcji i grupy zasobów w obszarze Szczegóły projektu. Następnie w obszarze Szczegóły bazy danych podaj nową nazwę bazy danych, którą planujesz przywrócić. Upewnij się, że na liście rozwijanej znajduje się właściwa instancja zarządzana SQL. Następnie wybierz pozycję Dalej: Źródło danych >
Na karcie „Źródło danych” wybierz opcję „Przywracanie do punktu w czasie” w sekcji „Użyj istniejących danych”. Podaj subskrypcję, grupę zasobów i wystąpienie zarządzane SQL zawierające źródłową bazę danych. Z listy rozwijanej Zarządzanej bazy danych wybierz bazę danych, którą chcesz przywrócić, a następnie moment w czasie, z którego chcesz przywrócić bazę danych. Wystąpienie źródłowe i docelowe może być takie same lub dwa różne wystąpienia. Wybierz pozycję Dalej: Dodatkowe ustawienia >
Na karcie Dodatkowe ustawienia można zaznaczyć pole, aby dziedziczyć zasady przechowywania ze źródłowej bazy danych lub, alternatywnie, możesz wybrać pozycję Konfiguruj przechowywanie, aby otworzyć stronę Konfigurowanie zasad i ustawić żądane zasady przechowywania dla przywróconej bazy danych. Po zakończeniu wybierz pozycję Przejrzyj + utwórz.
W obszarze Przeglądanie i tworzenie po pomyślnym zakończeniu walidacji wybierz pozycję Utwórz , aby przywrócić bazę danych.
Ta akcja rozpoczyna proces przywracania, który tworzy nową bazę danych i wypełnia ją danymi z oryginalnej bazy danych w określonym punkcie w czasie. Aby uzyskać więcej informacji na temat procesu odzyskiwania, zobacz Czas odzyskiwania.
Przywracanie usuniętej bazy danych
Usuniętą bazę danych można przywrócić przy użyciu witryny Azure Portal, programu Azure PowerShell lub interfejsu wiersza polecenia platformy Azure.
Aby przywrócić usuniętą zarządzaną bazę danych SQL za pomocą portalu Azure:
W portalu Azure przejdź do źródłowego wystąpienia zarządzanego SQL.
W menu po lewej stronie w obszarze Zarządzanie danymi wybierz pozycję Kopie zapasowe.
W obszarze Pokaż bazy danych wybierz pozycję Usunięte.
Aby przywrócić bazę danych, wybierz pozycję Przywróć.
W obszarze Tworzenie zarządzanej bazy danych Azure SQL wprowadź lub wybierz szczegóły docelowego wystąpienia zarządzanego SQL, do którego ma zostać przywrócona baza danych. Wybierz kartę Źródło danych.
W polu Źródło danych wprowadź lub wybierz szczegóły źródłowej bazy danych. Wybierz kartę Ustawienia dodatkowe.
W obszarze Dodatkowe ustawienia skonfiguruj ustawienia przechowywania. Wybierz kartę Przeglądanie i tworzenie .
W obszarze Przeglądanie i tworzenie wybierz pozycję Utwórz , aby przywrócić usuniętą bazę danych.
Zastępowanie istniejącej bazy danych
Aby zastąpić istniejącą bazę danych, należy wykonać następujące czynności:
- Usuń oryginalną bazę danych, którą chcesz zastąpić.
- Zmień nazwę bazy danych przywróconej z punktu w czasie na nazwę usuniętej bazy danych.
Usuwanie oryginalnej bazy danych
Bazę danych można usunąć przy użyciu witryny Azure Portal, programu PowerShell lub interfejsu wiersza polecenia platformy Azure.
Inną opcją porzucania bazy danych jest nawiązanie połączenia z wystąpieniem zarządzanym SQL bezpośrednio w programie SQL Server Management Studio (SSMS), a następnie użycie polecenia DROP Transact-SQL (T-SQL):
DROP DATABASE WorldWideImporters;
Użyj jednej z następujących metod, aby nawiązać połączenie z bazą danych w wystąpieniu zarządzanym SQL:
W portalu Azure wybierz bazę danych w Twoim wystąpieniu zarządzanym SQL.
Na pasku poleceń wybierz pozycję Usuń.
Zmień nową nazwę bazy danych tak, aby odpowiadała oryginalnej nazwie bazy danych
Użyj programu SQL Server Management Studio (SSMS), aby nawiązać bezpośrednie połączenie z wystąpieniem zarządzanym SQL. Następnie uruchom następujące zapytanie T-SQL. Zapytanie zmienia nazwę przywróconej bazy danych na nazwę usuniętej bazy danych, którą zamierzasz zastąpić.
ALTER DATABASE WorldWideImportersPITR MODIFY NAME = WorldWideImporters;
Użyj jednej z następujących metod, aby nawiązać połączenie z bazą danych w wystąpieniu zarządzanym SQL: