Tworzenie kopii zapasowej i przywracanie bazy danych przy użyciu usługi Azure SQL Database

Ukończone

Tworzenie kopii zapasowej i przywracanie w usłudze SQL Server PaaS działa inaczej niż w usłudze IaaS. Kopie zapasowe są generowane automatycznie dla usługi Azure SQL Database i usługi Azure SQL Managed Instance. Pełna kopia zapasowa jest tworzona raz w tygodniu, różnicowa co 12 godzin i kopie zapasowe dziennika transakcji co 5–10 minut. Wszystkie kopie zapasowe znajdują się w obiektach blob z dostępem do odczytu, geograficznie nadmiarowych (RA-GRS) replikowanych do centrum danych sparowanego na podstawie reguł platformy Azure. Oznacza to, że kopie zapasowe są bezpieczne przed awarią w jednym centrum danych.

Tworzenie i przywracanie kopii zapasowej bazy danych dla usługi SQL Database

Usługa SQL Database może pomóc w zachowaniu zgodności z obowiązkowymi kopiami zapasowymi w celach regulacyjnych z zasadami przechowywania. Zasady tworzenia kopii zapasowych można skonfigurować dla każdej bazy danych, jak pokazano na poniższej ilustracji:

Configuring automated backups for Azure SQL Database

Jeśli serwer zawierający bazę danych zostanie usunięty, wszystkie kopie zapasowe zostaną usunięte w tym samym czasie i nie ma możliwości ich odzyskania. Jeśli serwer nie został usunięty, ale baza danych jest, możesz przywrócić bazę danych normalnie.

Zarówno usługa SQL Database, jak i wystąpienie zarządzane SQL mają funkcję o nazwie Przyspieszone odzyskiwanie bazy danych (ADR). Ta funkcja jest domyślnie włączona, a jej celem jest skrócenie czasu czynienia z długotrwałymi transakcjami, aby nie wpływały na czas odzyskiwania. Mimo że przyspieszone odzyskiwanie bazy danych zostało opracowane dla platformy Azure i pierwotnie było funkcją opartą na platformie Azure, adr została również zaimplementowana w programie SQL Server 2019.

Uwaga

Nie można przywrócić kopii zapasowych wystąpienia zarządzanego usługi SQL Database w usłudze SQL Database.

Przywracanie do punktu w czasie

Aby przywrócić bazę danych do określonego punktu w czasie w usłudze SQL Database, możesz użyć witryny Azure Portal, programu Azure PowerShell, interfejsu wiersza polecenia platformy Azure lub interfejsu API REST.

Restoring a database on SQL Database through Azure portal

Na powyższym obrazie przedstawiono stronę przywracania usługi SQL Database w witrynie Azure Portal, na której można przywrócić bazę danych do określonego punktu w czasie.

Przywracanie na miejscu nie jest obsługiwane w usłudze SQL Database i w usłudze SQL Managed Instance. Przed podjęciem próby wykonania operacji przywracania należy upewnić się, że baza danych nie istnieje. Domyślnie zasady przechowywania punktu w czasie są ustawione na siedem dni i można je zmienić na maksymalnie 35 dni.

Przywracanie usuniętej bazy danych

Zarówno usługa SQL Database, jak i wystąpienie zarządzane SQL mają funkcję przywracania usuniętej bazy danych do ostatniego punktu w czasie dostępnego przed wystąpieniem DROP DATABASE .

Restoring a deleted database on SQL Database through Azure portal

Na powyższym obrazie przedstawiono sposób przywracania usuniętej bazy danych w usłudze SQL Database. Usunięta strona baz danych zawiera listę usuniętych baz danych dostępnych do przywrócenia, czas usunięcia bazy danych w formacie UTC oraz czas tworzenia bazy danych w formacie UTC. Po wybraniu bazy danych zostanie otwarta strona Tworzenie bazy danych SQL Database — przywracanie. Na tej stronie znajdziesz najwcześniejszy punkt przywracania w czasie dostępny dla wybranej bazy danych.

Tworzenie i przywracanie kopii zapasowej bazy danych dla usługi SQL Managed Instance

Platforma Azure automatycznie zarządza kopiami zapasowymi baz danych w usłudze SQL Managed Instance i działa podobnie do usługi SQL Database.

Możesz również ręcznie tworzyć kopie zapasowe i przywracać bazy danych za pomocą usługi SQL Managed Instance przy użyciu tej samej kopii zapasowej do adresu URL/przywracania z funkcji adresu URL znalezionej wcześniej w programie SQL Server. Wymaga to użycia poświadczeń w celu uzyskania dostępu do kontenera usługi Azure Blob Storage. Usługa SQL Database nie obsługuje tej funkcji.

Możesz wygenerować kopię zapasową COPY_ONLY tylko dlatego, że usługa SQL Managed Instance utrzymuje łańcuch dzienników. Przykładowa instrukcja tworzenia kopii zapasowej wygląda następująco:

BACKUP DATABASE contoso
TO URL = 'https://myacc.blob.core.windows.net/mycontainer/contoso.bak' 
WITH COPY_ONLY

Uwaga

Nie można przywrócić kopii zapasowych wystąpienia zarządzanego usługi SQL Database w usłudze SQL Database.