Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule opisano sposób przywracania bazy danych programu SQL Server uruchomionej na maszynie wirtualnej platformy Azure, której kopia zapasowa usługi Azure Backup została utworzona w sejfie usług Azure Backup Recovery Services.
W tym artykule opisano sposób przywracania baz danych programu SQL Server. Aby uzyskać więcej informacji, zobacz Tworzenie kopii zapasowych baz danych programu SQL Server na maszynach wirtualnych platformy Azure.
Uwaga / Notatka
Zobacz macierz obsługi kopii zapasowych SQL , aby dowiedzieć się więcej na temat obsługiwanych konfiguracji i scenariuszy.
Przywracanie do określonego momentu lub punktu odzyskiwania
Usługa Azure Backup może przywrócić bazy danych programu SQL Server uruchomione na maszynach wirtualnych platformy Azure w następujący sposób:
- Przywróć do określonej daty lub godziny (do sekundy) przy użyciu kopii zapasowych dziennika transakcji. Usługa Azure Backup automatycznie określa odpowiednią pełną różnicową kopię zapasową i łańcuch kopii zapasowych dziennika, które są wymagane do przywrócenia na podstawie wybranego czasu.
- Przywróć określoną pełną lub różnicową kopię zapasową, aby przywrócić do określonego punktu odzyskiwania.
Przywracanie wymagań wstępnych
Przed przywróceniem bazy danych zwróć uwagę na następujące kwestie:
- Bazę danych można przywrócić do wystąpienia programu SQL Server w tym samym regionie świadczenia usługi Azure.
- Serwer docelowy musi być zarejestrowany w tej samej skrytce co źródło. Jeśli chcesz przywrócić kopie zapasowe do innego magazynu, włącz przywracanie między subskrypcjami.
- Jeśli na serwerze jest uruchomionych wiele wystąpień, wszystkie wystąpienia powinny być uruchomione. W przeciwnym razie serwer nie będzie wyświetlany na liście serwerów docelowych, do których chcesz przywrócić bazę danych. Aby uzyskać więcej informacji, zapoznaj się z krokami rozwiązywania problemów.
- Aby przywrócić zaszyfrowaną bazę danych TDE do innego programu SQL Server, należy najpierw przywrócić certyfikat na serwerze docelowym.
- Bazy danych z włączoną usługą CDC należy przywrócić przy użyciu opcji Przywróć jako pliki.
- Zdecydowanie zalecamy przywrócenie bazy danych "master" przy użyciu opcji Przywróć jako pliki , a następnie przywrócenie przy użyciu poleceń języka T-SQL.
- W przypadku wszystkich systemowych baz danych (model, msdb) zatrzymaj usługę SQL Server Agent przed rozpoczęciem przywracania.
- Zamknij wszystkie aplikacje, które mogą próbować nawiązać połączenie z dowolną z tych baz danych.
- W przypadku głównych baz danych opcja Lokalizacja alternatywna dla przywracania nie jest obsługiwana. Zalecamy przywrócenie bazy danych master przy użyciu opcji Przywróć jako pliki , a następnie przywrócenie przy użyciu
T-SQLpoleceń . - Dla
msdbimodelopcja Lokalizacja alternatywna dla przywracania jest obsługiwana tylko wtedy, gdy nazwa przywróconej bazy danych różni się od nazwa docelowej bazy danych. Jeśli chcesz przywrócić tę samą nazwę z docelową bazą danych, zalecamy przywrócenie przy użyciu opcji Przywróć jako pliki , a następnie przywrócenie przy użyciuT-SQLpoleceń .
Przywracanie bazy danych
Do przywrócenia potrzebne są następujące uprawnienia:
- Uprawnienia operatora kopii zapasowej w magazynie, w którym wykonujesz przywracanie.
- Dostęp contributor (zapisu) do źródłowej maszyny wirtualnej, która jest kopiowana zapasowo.
-
Dostęp współautora (zapisu) do docelowej maszyny wirtualnej:
- Jeśli przywracasz kopię zapasową na tej samej maszynie wirtualnej, jest to źródłowa maszyna wirtualna.
- Jeśli przywracasz dane do lokalizacji alternatywnej, jest to nowa docelowa maszyna wirtualna.
Przywróć w następujący sposób:
W witrynie Azure Portal przejdź do pozycji Odporność , a następnie wybierz pozycję Odzyskaj.
W okienku Odzyskiwanie wybierz pozycję Typ źródła danych jako SQL na maszynie wirtualnej platformy Azure, a następnie w obszarze Chroniony element kliknij pozycję Wybierz.
W okienku Wybierz chroniony element wybierz chronioną bazę danych SQL z listy, a następnie kliknij pozycję Wybierz.
W okienku Odzyskiwanie wybierz pozycję Kontynuuj.
W okienku Przywracanie w obszarze Gdzie i jak przywrócić wybierz dowolną z następujących lokalizacji, aby przywrócić bazę danych:
Lokalizacja alternatywna: przywróć bazę danych do alternatywnej lokalizacji i zachowaj oryginalną źródłową bazę danych.
Oryginalna lokalizacja: Przywróć dane do tego samego wystąpienia serwera SQL, co oryginalne źródło danych. Ta opcja zastępuje oryginalną bazę danych.
Ważne
Jeśli wybrana baza danych należy do zawsze włączonej grupy dostępności, program SQL Server nie zezwala na zastąpienie bazy danych. Dostępna jest tylko lokalizacja alternatywna .
Przywróć jako pliki: Zamiast przywracać jako bazę danych, przywróć pliki kopii zapasowej, które można odzyskać jako bazę danych później na dowolnym komputerze, na którym znajdują się pliki przy użyciu programu SQL Server Management Studio.
Przywracanie do lokalizacji alternatywnej
W okienku Przywracanie w obszarze Gdzie chcesz przywrócić wybierz pozycję Lokalizacja alternatywna.
Wybierz nazwę i wystąpienie programu SQL Server, do którego chcesz przywrócić bazę danych.
W obszarze Przywrócona nazwa bazy danych wprowadź nazwę docelowej bazy danych.
Jeśli ma to zastosowanie, wybierz pozycję Zastąp, jeśli baza danych o tej samej nazwie już istnieje w wybranym wystąpieniu SQL.
W obszarze Punkt przywracania kliknij pozycję Wybierz.
W okienku Wybierz punkt przywracania wybierz, czy przywrócić do punktu w czasie , czy przywrócić do określonego punktu odzyskiwania, a następnie wybierz przycisk OK.
W okienku Przywracanie w obszarze Konfiguracja zaawansowana wybierz pozycję Konfiguruj.
W okienku Konfiguracja zaawansowana wykonaj wymaganą konfigurację, a następnie wybierz przycisk OK.
W okienku Przywracanie wybierz przycisk OK , aby wyzwolić przywracanie. Możesz śledzić postęp przywracania w obszarze Powiadomienia lub w widoku Zadania kopii zapasowej w magazynie.
Uwaga / Notatka
Przywracanie do punktu w czasie jest dostępne tylko w przypadku kopii zapasowych dzienników dla baz danych, które są w trybie odzyskiwania rejestrowanego zbiorczo.
Przywracanie i zastępowanie
W menu Konfiguracja przywracania w obszarze Gdzie przywrócić wybierz pozycję Zastąp bazę danych>OK.
W Wybierz punkt przywracania wybierz Dzienniki (punkt w czasie), aby przywrócić do określonego punktu w czasie. Możesz też wybrać opcję Pełne i różnicowe , aby przywrócić do określonego punktu odzyskiwania.
Uwaga / Notatka
Przywracanie do punktu w czasie jest dostępne tylko w przypadku kopii zapasowych dzienników dla baz danych, które są w trybie odzyskiwania rejestrowanego zbiorczo.
Przywróć jako pliki
Aby przywrócić dane kopii zapasowej jako pliki .bak zamiast bazy danych, wybierz pozycję Przywróć jako pliki. Gdy pliki zostaną zrzucane do określonej ścieżki, możesz przenieść te pliki na dowolną maszynę, na której chcesz je przywrócić jako bazę danych. Ponieważ można przenosić te pliki na dowolną maszynę, możesz teraz przywrócić dane między subskrypcjami i regionami.
W obszarze Gdzie i jak przywrócić wybierz pozycję Przywróć jako pliki.
Wybierz nazwę programu SQL Server, do której chcesz przywrócić pliki kopii zapasowej.
W ścieżce docelowej na serwerze wprowadź ścieżkę folderu na serwerze wybranym w kroku 2. Jest to lokalizacja, w której usługa zrzuci wszystkie niezbędne pliki kopii zapasowej. Zazwyczaj ścieżka udziału sieciowego lub ścieżka zainstalowanego udziału plików platformy Azure, gdy jest określona jako ścieżka docelowa, umożliwia łatwiejszy dostęp do tych plików przez inne maszyny w tej samej sieci lub z tym samym udziałem plików platformy Azure zainstalowanym na nich.
Uwaga / Notatka
Aby przywrócić pliki kopii zapasowej bazy danych w udziale plików platformy Azure zainstalowanym na docelowej zarejestrowanej maszynie wirtualnej, upewnij się, że serwer NT AUTHORITY\SYSTEM ma dostęp do udziału plików. Możesz wykonać poniższe kroki, aby udzielić uprawnień do odczytu/zapisu do usługi AFS zainstalowanej na maszynie wirtualnej:
- Uruchom
PsExec -s cmd, aby wejść do powłoki NT AUTHORITY\SYSTEM- Wykonać
cmdkey /add:<storageacct>.file.core.windows.net /user:AZURE\<storageacct> /pass:<storagekey> - Weryfikowanie dostępu za pomocą polecenia
dir \\<storageacct>.file.core.windows.net\<filesharename>
- Wykonać
- Rozpocznij przywracanie plików z magazynu kopii zapasowych do ścieżki
\\<storageacct>.file.core.windows.net\<filesharename>.
Narzędzie PsExec można pobrać ze strony Sysinternals .
- Uruchom
Wybierz przycisk OK.
Wybierz pozycję Punkt przywracania i wybierz, czy chcesz przywrócić do określonego punktu w czasie , czy przywrócić do określonego punktu odzyskiwania.
Podczas przywracania bazy danych SQL do punktu w czasie przy użyciu Przywróć jako pliki, będą przechowywane wszystkie punkty odzyskiwania od pełnej kopii zapasowej do wybranego punktu w czasie. Następnie możesz przywrócić te pliki jako bazę danych na dowolnym komputerze, na którym się znajdują, przy użyciu programu SQL Server Management Studio.
Przywracanie do określonego punktu w czasie
Jeśli jako typ przywracania wybrano pozycję Dzienniki (moment w czasie), wykonaj następujące czynności:
W obszarze Przywróć datę/godzinę otwórz kalendarz. Na kalendarzu daty z punktami odzyskiwania są wyświetlane pogrubioną czcionką, a bieżąca data jest wyróżniona.
Wybierz datę z punktami odzyskiwania. Nie można wybrać dat, które nie mają punktów odzyskiwania.
Po wybraniu daty wykres osi czasu wyświetla dostępne punkty odzyskiwania w ciągłym zakresie.
Określ czas odzyskiwania na wykresie osi czasu lub wybierz czas. Następnie wybierz przycisk OK.
Częściowe przywracanie jako pliki
Usługa Azure Backup decyduje o łańcuchu plików do pobrania podczas przywracania jako plików. Istnieją jednak scenariusze, w których możesz nie chcieć ponownie pobrać całej zawartości.
Na przykład, gdy masz politykę tworzenia kopii zapasowych, która obejmuje pełne kopie cotygodniowe, codzienne kopie różnicowe i kopie dzienników, a pliki dla określonej kopii różnicowej zostały już pobrane. Zorientowałeś się, że nie jest to właściwy punkt odzyskiwania i zdecydowałeś się na pobranie kopii różnicowej z następnego dnia. Teraz wystarczy plik różnicowy, ponieważ masz już pełny plik początkowy. Dzięki usłudze Azure Backup i możliwości częściowego przywracania w postaci plików, można teraz wykluczyć pełne kopie z łańcucha pobierania i pobrać tylko kopie różnicowe.
Wykluczanie typów plików kopii zapasowej
ExtensionSettingsOverrides.json to plik JSON (JavaScript Object Notation), który zawiera przesłonięcia dla wielu ustawień usługi Azure Backup dla języka SQL. W przypadku operacji "Przywracanie częściowe jako pliki" należy dodać nowe pole RecoveryPointTypesToBeExcludedForRestoreAsFiles JSON. To pole zawiera wartość ciągu, która wskazuje, które typy punktów odzyskiwania należy wykluczyć podczas następnej operacji przywracania plików.
Na maszynie docelowej, na której mają być pobierane pliki, przejdź do folderu "C:\Program Files\Azure Workload Backup\bin"
Utwórz nowy plik JSON o nazwie "ExtensionSettingsOverrides.JSON", jeśli jeszcze nie istnieje.
Dodaj następującą parę wartości klucza JSON
{ "RecoveryPointTypesToBeExcludedForRestoreAsFiles": "ExcludeFull" }Nie jest wymagane ponowne uruchomienie żadnej usługi. Usługa Azure Backup podejmie próbę wykluczenia typów kopii zapasowych w łańcuchu przywracania, jak wspomniano w tym pliku.
Tylko RecoveryPointTypesToBeExcludedForRestoreAsFiles przyjmuje określone wartości, które oznaczają punkty odzyskiwania, które mają być wykluczone podczas przywracania. W przypadku języka SQL następujące wartości to:
- ExcludeFull (Inne typy kopii zapasowych, takie jak różnicowe i dzienniki, zostaną pobrane, jeśli znajdują się one w łańcuchu punktów przywracania)
- ExcludeFullAndDifferential (inne typy kopii zapasowych, takie jak dzienniki, zostaną pobrane, jeśli znajdują się w łańcuchu punktów przywracania)
- ExcludeFullAndIncremental (inne typy kopii zapasowych, takie jak dzienniki, zostaną pobrane, jeśli znajdują się w łańcuchu punktów przywracania)
- ExcludeFullAndDifferentialAndIncremental (Inne typy kopii zapasowych, takie jak dzienniki, zostaną pobrane, jeśli znajdują się w łańcuchu punktów przywracania)
Przywróć do określonego punktu przywracania
Jeśli jako typ przywracania wybrano opcję Pełny i różnicowy , wykonaj następujące czynności:
Wybierz punkt odzyskiwania z listy i wybierz przycisk OK , aby ukończyć procedurę punktu przywracania.
Uwaga / Notatka
Domyślnie są wyświetlane punkty odzyskiwania z ostatnich 30 dni. Punkty odzyskiwania starsze niż 30 dni można wyświetlić, klikając pozycję Filtr i wybierając zakres niestandardowy.
Przywracanie baz danych z dużą liczbą plików
Jeśli łączny rozmiar ciągu plików w bazie danych jest większy niż określony limit, usługa Azure Backup przechowuje listę plików bazy danych w innym składniku pit, aby nie można było ustawić docelowej ścieżki przywracania podczas operacji przywracania. Zamiast tego pliki zostaną przywrócone do domyślnej ścieżki SQL.
Odzyskiwanie bazy danych z pliku .bak przy użyciu programu SSMS
Możesz użyć operacji Przywróć jako pliki , aby przywrócić pliki bazy danych w .bak formacie podczas przywracania z witryny Azure Portal.
Dowiedz się więcej.
Po zakończeniu .bak przywracania pliku do maszyny wirtualnej platformy Azure można wyzwolić przywracanie za pomocą poleceń TSQL za pośrednictwem programu SSMS.
Aby przywrócić pliki bazy danych do oryginalnej ścieżki na serwerze źródłowym, usuń klauzulę MOVE z zapytania przywracania TSQL.
Przykład
USE [master]
RESTORE DATABASE [<DBName>] FROM DISK = N'<.bak file path>'
Uwaga / Notatka
Nie powinno być tych samych plików bazy danych na serwerze docelowym (przywracanie z nadpisaniem). Ponadto można włączyć natychmiastowe inicjowanie plików na serwerze docelowym, aby zmniejszyć obciążenie związane z inicjowaniem pliku.
Aby przenieść pliki bazy danych z docelowego serwera przywracania, możesz oprawić polecenie TSQL przy użyciu MOVE klauzul .
USE [master]
RESTORE DATABASE [<DBName>] FROM DISK = N'<.bak file path>' MOVE N'<LogicalName1>' TO N'<TargetFilePath1OnDisk>', MOVE N'<LogicalName2>' TO N'<TargetFilePath2OnDisk>' GO
Przykład
USE [master]
RESTORE DATABASE [test] FROM DISK = N'J:\dbBackupFiles\test.bak' WITH FILE = 1, MOVE N'test' TO N'F:\data\test.mdf', MOVE N'test_log' TO N'G:\log\test_log.ldf', NOUNLOAD, STATS = 5
GO
Jeśli baza danych zawiera więcej niż dwa pliki, możesz dodać dodatkowe MOVE klauzule do zapytania przywracania. Można również użyć programu SSMS do odzyskiwania bazy danych przy użyciu .bak plików.
Dowiedz się więcej.
Uwaga / Notatka
W przypadku odzyskiwania dużej bazy danych zalecamy użycie instrukcji TSQL. Jeśli chcesz przenieść określone pliki bazy danych, zobacz listę plików bazy danych w formacie JSON utworzonym podczas operacji Przywróć jako pliki .
Przywracanie międzyregionalne
W ramach jednej z opcji przywracania, przywracanie między regionalne (CRR) umożliwia przywracanie baz danych SQL na maszynach wirtualnych Azure do regionu pomocniczego, który jest sparowanym regionem Azure.
Aby dołączyć do funkcji, przeczytaj sekcję Przed rozpoczęciem.
Aby sprawdzić, czy CRR jest włączona, postępuj zgodnie z instrukcjami w Konfigurowanie przywracania między regionami
Wyświetlanie elementów kopii zapasowej w regionie wtórnym
Jeśli tryb CRR jest włączony, możesz wyświetlić elementy kopii zapasowej w regionie pomocniczym.
- W portalu przejdź do magazynu usługi Recovery Services>Elementy kopii zapasowej.
- Wybierz pozycję Region pomocniczy , aby wyświetlić elementy w regionie pomocniczym.
Uwaga / Notatka
Na liście będą wyświetlane tylko typy zarządzania kopiami zapasowymi obsługujące funkcję CRR. Obecnie dozwolona jest tylko obsługa przywracania danych regionu pomocniczego do regionu pomocniczego.
Przywracanie w regionie pomocniczym
Środowisko użytkownika przywracania regionu pomocniczego będzie podobne do środowiska użytkownika przywracania regionu podstawowego. Podczas konfigurowania szczegółów w panelu Konfiguracja przywracania zostanie wyświetlony monit o podanie wyłącznie parametrów regionu pomocniczego. Skarbiec powinien istnieć w regionie pomocniczym, a serwer SQL powinien zostać zarejestrowany w skarbcu w regionie pomocniczym.
Uwaga / Notatka
- Po uruchomieniu przywracania oraz gdy trwa transfer danych, nie można anulować zadania przywracania.
- Aby wykonać operację przywracania w różnych regionach, wymagany jest poziom roli Operatora kopii zapasowych w subskrypcji oraz dostęp Współautora z możliwością zapisu na źródłowych i docelowych maszynach wirtualnych. Aby wyświetlić zadania tworzenia kopii zapasowych, minimalnym uprawnieniem wymaganym w ramach subskrypcji jest czytelnik kopii zapasowej.
- Punkt odzyskiwania (RPO) dla danych kopii zapasowej, który ma być dostępny w regionie zapasowym, wynosi 12 godzin. W związku z tym po włączeniu funkcji CRR docelowy punkt odzyskiwania dla regionu pomocniczego wynosi 12 godzin plus czas trwania częstotliwości rejestrowania dzienników (który można ustawić na co najmniej 15 minut).
Dowiedz się więcej o minimalnych wymaganiach dotyczących roli przy przywracaniu między regionami.
Monitorowanie przywracania zadań w regionie pomocniczym
Aby wyświetlić zadania przywracania regionu pomocniczego, wykonaj następujące kroki:
W portalu Azure przejdź do pozycji Monitorowanie odporności> + raportowanie> - zadania.
W okienku Zadania wybierz pozycję Typ źródła danych jako SQL na maszynie wirtualnej platformy Azure.
Przywracanie subskrypcji między kontami
Usługa Azure Backup umożliwia teraz przywracanie bazy danych SQL do dowolnej subskrypcji (zgodnie z następującymi wymaganiami RBAC platformy Azure) z punktu przywracania. Domyślnie usługa Azure Backup przywraca do tej samej subskrypcji, w której są dostępne punkty przywracania.
W przypadku funkcji przywracania między subskrypcjami (CSR) możesz elastycznie przywracać dane do dowolnej subskrypcji i dowolnej skrytki w dzierżawie, o ile są dostępne uprawnienia przywracania. Domyślnie CSR jest włączone we wszystkich magazynach Recovery Services (zarówno istniejących, jak i nowo utworzonych magazynach).
Uwaga / Notatka
- Możesz wyzwolić przywracanie między subskrypcjami z magazynu usług odzyskiwania.
- CSR jest obsługiwane tylko w przypadku kopii strumieniowej i nie jest obsługiwane w przypadku kopii migawkowej.
- Przywracanie między regionami (CRR) z CSR nie jest obsługiwane.
Wymagania dotyczące kontroli dostępu na podstawie ról platformy Azure
| Typ operacji | Operator kopii zapasowych | magazyn usługi Recovery Services | Operator alternatywny |
|---|---|---|---|
| Przywracanie bazy danych lub przywracanie jako plików | Virtual Machine Contributor |
Źródłowa maszyna wirtualna, którą zbackupowano | Zamiast roli wbudowanej można rozważyć rolę niestandardową, która ma następujące uprawnienia: - Microsoft.Compute/virtualMachines/write - Microsoft.Compute/virtualMachines/read |
Virtual Machine Contributor |
Docelowa maszyna wirtualna, w której zostanie przywrócona baza danych, lub zostaną utworzone pliki. | Zamiast roli wbudowanej można rozważyć rolę niestandardową, która ma następujące uprawnienia: - Microsoft.Compute/virtualMachines/write - Microsoft.Compute/virtualMachines/read |
|
Backup Operator |
Docelowa skrytka usługi przywracania |
Domyślnie csr jest włączona w magazynie usługi Recovery Services. Aby zaktualizować ustawienia przywracania magazynu usługi Recovery Services, przejdź do pozycji Właściwości>Przywracanie międzysubskrypcyjne i wprowadź wymagane zmiany.
Dalsze kroki
Zarządzanie i monitorowanie Bazy danych programu SQL Server, których kopia zapasowa jest tworzona przez usługę Azure Backup.
Treści powiązane
- Tworzenie kopii zapasowych baz danych programu SQL Server na maszynach wirtualnych platformy Azure przy użyciu usługi Azure Backup za pośrednictwem interfejsu API REST.
- Przywracanie baz danych programu SQL Server na maszynach wirtualnych platformy Azure przy użyciu interfejsu API REST.
- Zarządzanie bazami danych programu SQL Server na maszynach wirtualnych platformy Azure przy użyciu witryny Azure Portal, interfejsu wiersza polecenia platformy Azure, interfejsu API REST.