Udostępnij za pośrednictwem


Zarządzana kopia zapasowa programu SQL Server na platformie Microsoft Azure

Dotyczy:programu SQL Server — tylko system Windows

Zarządzana kopia zapasowa programu SQL Server na platformie Microsoft Azure zarządza kopiami zapasowymi programu SQL Server i automatyzuje tworzenie kopii zapasowych w usłudze Microsoft Azure Blob Storage. Możesz zezwolić programowi SQL Server na określenie harmonogramu tworzenia kopii zapasowych na podstawie obciążenia transakcji bazy danych lub użyć opcji zaawansowanych, aby zdefiniować harmonogram. Ustawienia przechowywania określają, jak długo kopie zapasowe są przechowywane w usłudze Azure Blob Storage. Zarządzana kopia zapasowa programu SQL Server na platformie Microsoft Azure obsługuje przywracanie do określonego punktu w czasie dla określonego czasu przechowywania.

Uwaga

W programie SQL Server 2016 (13.x) zmieniono procedury i podstawowe zachowanie zarządzanej kopii zapasowej programu SQL Server na platformę Microsoft Azure. Aby uzyskać więcej informacji, zobacz Migrowanie ustawień zarządzanej kopii zapasowej.

Usługa zarządzanej kopii zapasowej SQL Server na platformie Microsoft Azure jest zalecana dla instancji SQL Server działających na maszynach wirtualnych Microsoft Azure.

Korzyści

Obecnie automatyzowanie kopii zapasowych dla wielu baz danych wymaga opracowania strategii tworzenia kopii zapasowych, pisania niestandardowego kodu i planowania kopii zapasowych. Za pomocą zarządzanej kopii zapasowej programu SQL Server na platformie Microsoft Azure można utworzyć plan tworzenia kopii zapasowych, określając tylko okres przechowywania i lokalizację przechowywania. Chociaż ustawienia zaawansowane są dostępne, nie są wymagane. Zarządzana kopia zapasowa SQL Server na platformie Microsoft Azure planuje, wykonuje i utrzymuje kopie zapasowe.

Zarządzana kopia zapasowa programu SQL Server na platformie Microsoft Azure może być skonfigurowana na poziomie bazy danych lub na poziomie wystąpienia programu SQL Server. Po skonfigurowaniu na poziomie wystąpienia wszystkie nowe bazy danych są również automatycznie archiwizowane. Ustawienia na poziomie bazy danych mogą służyć do zastępowania wartości domyślnych na poziomie wystąpienia w poszczególnych przypadkach.

Można również zaszyfrować kopie zapasowe pod kątem dodanych zabezpieczeń i skonfigurować niestandardowy harmonogram do kontrolowania czasu wykonywania kopii zapasowych. Aby uzyskać więcej informacji na temat zalet korzystania z usługi Microsoft Azure Blob Storage na potrzeby kopii zapasowych programu SQL Server, zobacz Tworzenie kopii zapasowych i przywracanie programu SQL Server za pomocą usługi Azure Blob Storage.

Wymagania wstępne

Usługa Microsoft Azure Storage jest używana przez zarządzaną kopię zapasową programu SQL Server na platformie Microsoft Azure do przechowywania plików kopii zapasowych. Wymagane są następujące wymagania wstępne:

Warunek wstępny Opis
Konto platformy Microsoft Azure Przed rozpoczęciem korzystania z opcji zakupu możesz rozpocząć pracę z platformą Azure z bezpłatną wersją próbną.
konto usługi Azure Storage Kopie zapasowe są przechowywane w usłudze Azure Blob Storage skojarzonej z kontem usługi Azure Storage. Aby uzyskać instrukcje krok po kroku dotyczące tworzenia konta magazynu, zobacz Tworzenie konta magazynu.
Kontener obiektów blob Bloby są zorganizowane w kontenerach. Należy określić kontener docelowy dla plików kopii zapasowej. Kontener można utworzyć w portalu zarządzania Azure lub użyć New-AzureStorageContainer polecenia programu Azure PowerShell.
Sygnatury dostępu współdzielonego (SAS) Dostęp do kontenera docelowego jest kontrolowany przez sygnaturę dostępu współdzielonego (SAS). Aby zapoznać się z omówieniem sygnatur dostępu współdzielonego (SAS), zobacz Udzielanie ograniczonego dostępu do zasobów usługi Azure Storage przy użyciu sygnatur dostępu współdzielonego (SAS). Token SAS można utworzyć w kodzie lub za New-AzureStorageContainerSASToken pomocą polecenia programu PowerShell. Aby uzyskać skrypt programu PowerShell, który upraszcza ten proces, zobacz Upraszczanie tworzenia poświadczeń SQL przy użyciu tokenów sygnatury dostępu współdzielonego (SAS) w usłudze Azure Storage przy użyciu programu PowerShell. Token SAS można przechowywać w poświadczeniu SQL do użycia z zarządzaną kopią zapasową programu SQL Server na platformie Microsoft Azure.
SQL Server Agent Agent programu SQL Server musi być uruchomiony, aby zarządzana kopia zapasowa SQL Server na platformie Microsoft Azure działała. Rozważ ustawienie opcji uruchamiania na automatyczne.
Pomocnicza grupa dostępności z możliwością odczytu Jeśli odciążasz zarządzane kopie zapasowe do pomocniczej repliki w grupie dostępności Always On, replika pomocnicza musi być ustawiona na do odczytu, aby zarządzane kopie zapasowe zakończyły się pomyślnie.

Składniki

Transact-SQL jest głównym interfejsem umożliwiającym interakcję z zarządzaną kopią zapasową programu SQL Server na platformie Microsoft Azure. Systemowe procedury składowane służą do włączania, konfigurowania i monitorowania zarządzanej kopii zapasowej programu SQL Server na platformie Microsoft Azure. Funkcje systemowe służą do pobierania istniejących ustawień konfiguracji, wartości parametrów i informacji o pliku kopii zapasowej. Zdarzenia rozszerzone są używane do wykrywania błędów i ostrzeżeń. Mechanizmy alertów są włączone za pośrednictwem zadań agenta SQL i zarządzania opartego na zasadach programu SQL Server. Poniższa lista obiektów zawiera opis ich funkcjonalności w odniesieniu do zarządzanej kopii zapasowej programu SQL Server na platformie Microsoft Azure.

Polecenia cmdlet programu PowerShell są również dostępne do konfigurowania zarządzanej kopii zapasowej programu SQL Server na platformie Microsoft Azure. Program SQL Server Management Studio obsługuje przywracanie kopii zapasowych utworzonych przez zarządzaną kopię zapasową programu SQL Server na platformie Microsoft Azure przy użyciu zadania Przywróć bazę danych .

Obiekt systemowy Opis
msdb Przechowuje metadane, historię kopii zapasowych dla wszystkich kopii zapasowych utworzonych przez program SQL Server zarządzanych kopii zapasowych na platformie Microsoft Azure.
managed_backup.sp_backup_config_basic Umożliwia tworzenie kopii zapasowej zarządzanej przez program SQL Server na platformie Microsoft Azure.
managed_backup.sp_backup_config_advanced Konfiguruje zaawansowane ustawienia zarządzanej kopii zapasowej programu SQL Server na platformie Microsoft Azure, takie jak szyfrowanie.
managed_backup.sp_backup_config_schedule Tworzy niestandardowy harmonogram tworzenia kopii zapasowej zarządzanej przez program SQL Server na platformie Microsoft Azure.
managed_backup.sp_ backup_master_switch Wstrzymuje i wznawia zarządzaną kopię zapasową programu SQL Server na platformie Microsoft Azure.
managed_backup.sp_set_parameter Włącza i konfiguruje monitorowanie zarządzanej kopii zapasowej programu SQL Server na platformie Microsoft Azure. Przykłady: włączanie zdarzeń rozszerzonych, ustawienia poczty dla powiadomień.
managed_backup.sp_backup_on_demand Wykonuje kopię zapasową ad hoc dla bazy danych przy użyciu zarządzanej kopii zapasowej programu SQL Server na platformie Microsoft Azure, nie przerywając łańcucha dzienników.
managed_backup.fn_backup_db_config Zwraca bieżącą zarządzaną kopię zapasową programu SQL Server do stanu i wartości konfiguracji platformy Microsoft Azure dla bazy danych lub wszystkich baz danych w wystąpieniu.
managed_backup.fn_is_master_switch_on Zwraca stan przełącznika głównego.
managed_backup.sp_get_backup_diagnostics Zwraca zdarzenia rejestrowane przez Zdarzenia Rozszerzone.
managed_backup.fn_get_parameter Zwraca bieżące wartości ustawień systemu tworzenia kopii zapasowych, takich jak monitorowanie i ustawienia poczty dla alertów.
managed_backup.fn_available_backups Pobiera dostępne kopie zapasowe dla określonej bazy danych lub wszystkich baz danych w wystąpieniu.
managed_backup.fn_get_current_xevent_settings Zwraca bieżące ustawienia zdarzeń rozszerzonych.
managed_backup.fn_get_health_status Zwraca zagregowaną liczbę błędów rejestrowanych przez zdarzenia rozszerzone dla określonego okresu.

Strategia tworzenia kopii zapasowych

W poniższych sekcjach opisano strategię tworzenia kopii zapasowych dla zarządzanej kopii zapasowej programu SQL Server na platformie Microsoft Azure.

Planowanie kopii zapasowych

Niestandardowy harmonogram tworzenia kopii zapasowych można określić przy użyciu procedury składowanej systemu managed_backup.sp_backup_config_schedule. Jeśli nie określisz niestandardowego harmonogramu, typ zaplanowanych kopii zapasowych i częstotliwość tworzenia kopii zapasowych zostanie określona na podstawie obciążenia bazy danych. Ustawienia okresu przechowywania służą do określania czasu przechowywania pliku kopii zapasowej w magazynie oraz możliwości odzyskania bazy danych do punktu w czasie w okresie przechowywania.

Konwencje nazewnictwa plików kopii zapasowych

Zarządzana kopia zapasowa programu SQL Server na platformie Microsoft Azure używa określonego kontenera, więc masz kontrolę nad nazwą kontenera. W przypadku plików kopii zapasowych bazy danych o niedostępnej nazwie korzystają z następującej konwencji: Nazwa jest tworzona przy użyciu pierwszych 40 znaków nazwy bazy danych, identyfikatora GUID bazy danych bez znaku i sygnatury -czasowej. Znak podkreślenia jest wstawiany między segmentami jako separatorami. Rozszerzenie .bak pliku jest używane do pełnej kopii zapasowej, a .log do kopii zapasowych dziennika. W przypadku baz danych w grupie dostępności (AG) oprócz opisanej wcześniej konwencji nazewnictwa plików identyfikator GUID bazy danych grupy dostępności jest dodawany po 40 znakach nazwy bazy danych. Wartość identyfikatora GUID bazy danych grupy dostępności jest wartością dla group_database_id w pliku sys.databases.

Pełna kopia zapasowa bazy danych

Zarządzana kopia zapasowa programu SQL Server w agencie platformy Microsoft Azure planuje tworzenie pełnej kopii zapasowej bazy danych, jeśli spełniony jest którykolwiek z poniższych warunków.

  • Baza danych to zarządzana kopia zapasowa programu SQL Server na platformie Microsoft Azure włączona po raz pierwszy lub gdy zarządzana kopia zapasowa programu SQL Server na platformie Microsoft Azure jest włączona z ustawieniami domyślnymi na poziomie wystąpienia.

  • Wzrost dziennika od ostatniej pełnej kopii zapasowej bazy danych jest równy lub większy niż 1 GB.

  • Maksymalny interwał czasu jednego tygodnia minął od czasu ostatniej pełnej kopii zapasowej bazy danych.

  • Łańcuch logów jest przerwany. Zarządzane przez SQL Server kopie zapasowe na platformie Microsoft Azure okresowo sprawdzają, czy łańcuch dzienników jest spójny, porównując pierwsze i ostatnie LSN-ów plików kopii zapasowych. Jeśli z jakiegoś powodu istnieje przerwa w łańcuchu dzienników, zarządzana kopia zapasowa programu SQL Server na platformie Microsoft Azure planuje tworzenie pełnej kopii zapasowej bazy danych. Najczęstszą przyczyną przerwania łańcucha dzienników jest prawdopodobnie polecenie kopii zapasowej wydane przy użyciu Transact-SQL lub za pomocą zadania Kopia zapasowa w programie SQL Server Management Studio. Inne typowe scenariusze obejmują przypadkowe usunięcie plików dziennika kopii zapasowej lub przypadkowe zastąpienie kopii zapasowych.

Kopia zapasowa dziennika transakcji

Zarządzana kopia zapasowa programu SQL Server na platformie Microsoft Azure planuje tworzenie kopii zapasowej dziennika, jeśli spełniony jest którykolwiek z następujących warunków:

  • Nie można odnaleźć historii kopii zapasowej dziennika. Zwykle jest to prawdą, gdy zarządzana kopia zapasowa programu SQL Server na platformie Microsoft Azure jest włączona po raz pierwszy.

  • Używane miejsce dziennika transakcji wynosi 5 MB lub więcej.

  • Maksymalny przedział czasu wynoszący 2 godziny od momentu osiągnięcia ostatniej kopii zapasowej dziennika.

  • Za każdym razem, gdy kopia zapasowa dziennika transakcji jest opóźniona w stosunku do pełnej kopii zapasowej bazy danych. Celem jest utrzymanie łańcucha dzienników przed utworzeniem pełnej kopii zapasowej.

Ustawienia okresu przechowywania

Podczas włączania tworzenia kopii zapasowej należy ustawić okres przechowywania w dniach: wartość minimalna to 1 dzień, a maksymalna wartość to 90 dni.

Program SQL Server zarządza tworzeniem kopii zapasowych na platformie Microsoft Azure, opierając się na ustawieniach dotyczących okresu przechowywania. Analizuje możliwość odzyskania danych do określonego punktu w czasie, aby zadecydować, które pliki kopii zapasowej zachować, a które usunąć. Data zakończenia kopii zapasowej jest używana do określania i dopasowywania czasu określonego przez ustawienia okresu przechowywania.

Zagadnienia do rozważenia

W przypadku bazy danych, jeśli jest uruchomione zadanie tworzenia pełnej kopii zapasowej bazy danych, wówczas zarządzana kopia zapasowa programu SQL Server na platformie Microsoft Azure czeka na ukończenie bieżącego zadania przed wykonaniem kolejnej pełnej kopii zapasowej bazy danych dla tej samej bazy danych. Podobnie w danym momencie można uruchomić tylko jedną kopię zapasową dziennika transakcji. Jednak pełna kopia zapasowa bazy danych i kopia zapasowa dziennika transakcji mogą być uruchamiane współbieżnie. Błędy są rejestrowane jako zdarzenia rozszerzone.

Jeśli zaplanowano więcej niż 10 współbieżnych pełnych kopii zapasowych bazy danych, zostanie wyświetlone ostrzeżenie za pośrednictwem kanału debugowania zdarzeń rozszerzonych. Następnie zarządzana kopia zapasowa programu SQL Server na platformie Microsoft Azure utrzymuje kolejkę priorytetową dla pozostałych baz danych, które wymagają kopii zapasowej, dopóki wszystkie kopie zapasowe nie zostaną zaplanowane i ukończone.

Wspieralność

Następujące ograniczenia i zagadnienia dotyczące pomocy technicznej są specyficzne dla programu SQL Server:

  • Tworzenie kopii zapasowych masterbaz danych , modeli msdb systemowych jest obsługiwane. Tworzenie kopii zapasowej tempdb elementu nie jest obsługiwane.

  • Wszystkie modele odzyskiwania są obsługiwane (pełne, zarejestrowane zbiorczo i proste).

  • Zarządzana kopia zapasowa programu SQL Server do agenta platformy Microsoft Azure obsługuje tylko pełne kopie zapasowe bazy danych i kopie zapasowe dziennika. Automatyzacja tworzenia kopii zapasowych plików nie jest obsługiwana.

  • Usługa Microsoft Azure Blob Storage jest jedyną obsługiwaną opcją magazynu kopii zapasowych. Kopie zapasowe na dysku lub taśmie nie są obsługiwane.

  • Zarządzana kopia zapasowa programu SQL Server na platformie Microsoft Azure używa funkcji Kopia zapasowa do blokowania obiektów blob. Maksymalny rozmiar blokowego obiektu blob wynosi 200 GB. Jednak przy użyciu przesyłania pasma maksymalny rozmiar pojedynczej kopii zapasowej może osiągnąć 12 TB. Jeśli wymagania dotyczące tworzenia kopii zapasowej przekraczają ten limit, rozważ użycie kompresji i przetestuj rozmiar pliku kopii zapasowej przed skonfigurowaniem zarządzanej kopii zapasowej programu SQL Server na platformie Microsoft Azure. Możesz przetestować, tworząc kopię zapasową dysku lokalnego lub ręcznie tworząc kopię zapasową w usłudze Microsoft Azure Storage przy użyciu BACKUP TO URL instrukcji Transact-SQL. Aby uzyskać więcej informacji, zobacz Tworzenie kopii zapasowej programu SQL Server pod adresem URL dla usługi Microsoft Azure Blob Storage.

  • Tworzenie kopii zapasowej zarządzanej przez program SQL Server na platformie Microsoft Azure może mieć pewne ograniczenia, jeśli są skonfigurowane z innymi technologiami obsługującymi tworzenie kopii zapasowych, wysoką dostępność lub odzyskiwanie po awarii.

  • Kopie zapasowe baz danych w grupie dostępności są kopiami zapasowymi tylko do kopiowania.

  • Jeśli odciążasz zarządzane kopie zapasowe do pomocniczej repliki grupy dostępności Always On, replika pomocnicza musi być ustawiona na Czytelna, aby zarządzane kopie zapasowe mogły rozłożyć dane na wiele plików.

  • Zarządzana kopia zapasowa programu SQL Server nie jest obsługiwana w przypadku serwerów proxy.

  • Zarządzane kopie zapasowe nie są obsługiwane przez wersję internetową programu SQL Server.