SQL Server Managed Backup für Microsoft Azure

Gilt für:SQL Server – nur Windows

SQL Server Managed Backup to Microsoft Azure verwaltet und automatisiert SQL Server-Sicherungen in Microsoft Azure Blob Storage. Sie können es SQL Server ermöglichen, den Sicherungszeitplan basierend auf der Transaktionsarbeitsauslastung Ihrer Datenbank zu bestimmen. Alternativ können Sie die erweiterten Optionen zum Bestimmen eines Zeitplans verwenden. Die Aufbewahrungseinstellungen bestimmen, wie lange die Sicherungen in Azure Blob Storage gespeichert werden. Sql Server Managed Backup to Microsoft Azure unterstützt die Punkt-in-Time-Wiederherstellung für den angegebenen Aufbewahrungszeitraum.

Ab SQL Server 2016 (13.x) wurden die Prozeduren und das zugrunde liegende Verhalten von SQL Server Managed Backup zu Microsoft Azure geändert. Weitere Informationen finden Sie unter Migrieren der verwalteten Sicherungseinstellungen von SQL Server 2014 zu SQL Server 2016.

Tipp

SQL Server Managed Backup to Microsoft Azure wird für SQL Server-Instanzen empfohlen, die auf virtuellen Microsoft Azure-Computern ausgeführt werden.

Vorteile

Für die Automatisierung von Sicherungen für mehrere Datenbanken sind derzeit die Entwicklung einer Sicherungsstrategie, das Schreiben von eigenem Code und eine Planung der Sicherungen erforderlich. Mithilfe der verwalteten SQL Server-Sicherung in Microsoft Azure können Sie einen Sicherungsplan erstellen, indem Sie nur den Aufbewahrungszeitraum und den Speicherort angeben. Obwohl erweiterte Einstellungen verfügbar sind, sind sie nicht erforderlich. SQL Server Managed Backup to Microsoft Azure schedules, performt und verwaltet die Sicherungen.

Sql Server Managed Backup to Microsoft Azure kann auf Datenbankebene oder auf SQL Server-Instanzebene konfiguriert werden. Wenn Sie auf Instanzebene konfigurieren, werden alle neuen Datenbanken ebenfalls automatisch gesichert. Einstellungen auf Datenbankebene können verwendet werden, um im Einzelfall Standardwerte der Instanzebene zu überschreiben.

Sie können die Sicherungen auch verschlüsseln, um die Sicherheitsvorkehrungen zu erhöhen. Außerdem können Sie einen benutzerdefinierten Zeitplan einrichten, um zu steuern, wann die Sicherungen erstellt werden. Weitere Informationen zu den Vorteilen der Verwendung von Microsoft Azure Blob Storage für SQL Server-Sicherungen finden Sie unter SQL Server Backup and Restore with Microsoft Azure Blob Storage

Voraussetzungen

Microsoft Azure Storage wird von SQL Server Managed Backup für Microsoft Azure verwendet, um die Sicherungsdateien zu speichern. Die folgenden Voraussetzungen müssen erfüllt sein:

Voraussetzung Beschreibung
Microsoft Azure-Konto Für erste Schritte mit Azure können Sie die kostenlose Testversion verwenden, bevor Sie sich mit den Kaufoptionenbeschäftigen.
Azure Storage-Konto Die Sicherungen werden in Azure Blob Storage gespeichert, das einem Azure-Speicherkonto zugeordnet ist. Eine Schritt-für-Schritt-Anleitung zum Erstellen eines Speicherkontos finden Sie unter Informationen zu Azure-Speicherkonten.
Blobcontainer Blobs sind in Containern organisiert. Sie geben den Zielcontainer für die Sicherungsdateien an. Sie können im Azure-Verwaltungsportal oder mithilfe des Azure PowerShell-Befehls New-AzureStorageContainer einen Container erstellen.
Shared Access Signature (SAS) Der Zugriff auf den Zielcontainer wird durch eine Shared Access Signature (SAS) gesteuert. Einen Überblick über die SAS finden Sie unter Shared Access Signatures, Teil 1: Grundlagen zum SAS-Modell. Sie können ein SAS-Token im Code oder mithilfe des PowerShell-Befehls New-AzureStorageContainerSASToken erstellen. Ein PowerShell-Skript, das diesen Prozess vereinfacht, finden Sie unter Vereinfachen der Erstellung von SQL-Anmeldeinformationen mit SAS-Token (Shared Access Signature) in Azure Storage mit PowerShell. Das SAS-Token kann in einer SQL-Anmeldeinformation für die Verwendung mit SQL Server Managed Backup für Microsoft Azure gespeichert werden.
SQL Server-Agent DER SQL Server-Agent muss ausgeführt werden, damit SQL Server Managed Backup für Microsoft Azure funktioniert. Ziehen Sie in Betracht, die Startoption auf „automatisch“ festzulegen.

Komponenten

Transact-SQL ist die Hauptschnittstelle für die Interaktion mit SQL Server Managed Backup zu Microsoft Azure. Gespeicherte Systemprozeduren werden verwendet, um SQL Server Managed Backup in Microsoft Azure zu aktivieren, zu konfigurieren und zu überwachen. Systemfunktionen werden zum Abrufen vorhandener Konfigurationseinstellungen, Parameterwerte und Sicherungsdateiinformationen verwendet. Erweiterte Ereignisse dienen der Überwachung von Fehlern und Warnungen. Warnmechanismen werden über SQL Agent-Aufträge und die richtlinienbasierte Verwaltung in SQL Server aktiviert. Es folgt eine Liste der Objekte und eine Beschreibung ihrer Funktionalität im Zusammenhang mit SQL Server Managed Backup zu Microsoft Azure.

PowerShell-Cmdlets stehen auch zum Konfigurieren der verwalteten SQL Server-Sicherung für Microsoft Azure zur Verfügung. SQL Server Management Studio unterstützt das Wiederherstellen von Sicherungen, die von SQL Server Managed Backup in Microsoft Azure mithilfe der Aufgabe "Datenbank wiederherstellen" erstellt wurden.

Systemobjekt Beschreibung
MSDB Speichert die Metadaten, den Sicherungsverlauf für alle Sicherungen, die von SQL Server Managed Backup für Microsoft Azure erstellt wurden.
managed_backup.sp_backup_config_basic (Transact-SQL) Aktiviert die verwaltete SQL Server-Sicherung in Microsoft Azure.
managed_backup.sp_backup_config_advanced (Transact-SQL) Konfiguriert erweiterte Einstellungen für die verwaltete SQL Server-Sicherung für Microsoft Azure, z. B. Verschlüsselung.
managed_backup.sp_backup_config_schedule (Transact-SQL) Erstellt einen benutzerdefinierten Zeitplan für sql Server Managed Backup für Microsoft Azure.
managed_backup.sp_ backup_master_switch (Transact-SQL) Hält die verwaltete SQL Server-Sicherung an Microsoft Azure an und setzt sie fort.
managed_backup.sp_set_parameter (Transact-SQL) Aktiviert und konfiguriert die Überwachung für sql Server Managed Backup für Microsoft Azure. Beispiele: Aktivierung erweiterter Ereignisse, E-Mail-Einstellungen für Benachrichtigungen
managed_backup.sp_backup_on_demand (Transact-SQL) Führt eine Ad-hoc-Sicherung für eine Datenbank aus, die sql Server Managed Backup für Microsoft Azure verwenden kann, ohne die Protokollkette zu unterbrechen.
managed_backup.fn_backup_db_config (Transact-SQL) Gibt die aktuelle verwaltete SQL Server-Sicherung an microsoft Azure-Status- und Konfigurationswerte für eine Datenbank oder für alle Datenbanken in der Instanz zurück.
managed_backup.fn_is_master_switch_on (Transact-SQL) Gibt den Status des Hauptschalters zurück.
managed_backup.sp_get_backup_diagnostics (Transact-SQL) Gibt die Ereignisse zurück, die von erweiterten Ereignissen protokolliert wurden.
managed_backup.fn_get_parameter (Transact-SQL) Gibt die aktuellen Werte für die Sicherungssystemeinstellungen zurück, z.B. für die Überwachungs- oder E-Mail-Einstellungen für Warnungen.
managed_backup.fn_available_backups (Transact-SQL) Ruft verfügbare Sicherungen für eine angegebene Datenbank bzw. für alle Datenbanken einer Instanz ab.
managed_backup.fn_get_current_xevent_settings (Transact-SQL) Gibt die aktuellen Einstellungen für erweiterte Ereignisse zurück.
managed_backup.fn_get_health_status (Transact-SQL) Gibt die aggregierte Anzahl von Fehlern zurück, die von den erweiterten Ereignissen für einen bestimmten Zeitraum protokolliert wurden.

Sicherungsstrategie

Sicherungszeitplanung

Sie können einen benutzerdefinierten Sicherungszeitplan mithilfe der gespeicherten Systemprozedur managed_backup.sp_backup_config_schedule (Transact-SQL) angeben. Wenn Sie keinen benutzerdefinierten Zeitplan angeben, wird der Typ der geplanten Sicherungen und die Sicherungshäufigkeit basierend auf der Arbeitsauslastung der Datenbank bestimmt. Anhand der Beibehaltungsdauereinstellungen wird ermittelt, wie lange eine Sicherungsdatei im Speicher gehalten werden soll. Außerdem wird die Wiederherstellbarkeit der Datenbank zu einem bestimmten Zeitpunkt innerhalb der Beibehaltungsdauer geprüft.

Benennungskonventionen für Sicherungsdateien

SQL Server Managed Backup für Microsoft Azure verwendet den von Ihnen angegebenen Container, sodass Sie die Kontrolle über den Namen des Containers haben. Für Sicherungsdateien werden Nicht-Verfügbarkeitsdatenbanken mithilfe der folgenden Konvention benannt: Der Name wird mit den ersten 40 Zeichen des Datenbanknamens, der Datenbank-GUID ohne „-“ und dem Zeitstempel erstellt. Der Unterstrich wird zwischen Segmenten als Trennzeichen eingefügt. Als Dateierweiterung wird .bak bei einer vollständigen Sicherung und .log für Protokollsicherungen verwendet. Bei Datenbanken in Verfügbarkeitsgruppen gilt neben der oben beschriebenen Dateinamenskonvention, dass nach den 40 Zeichen des Datenbanknamens die GUID der Verfügbarkeitsgruppen-Datenbank angehängt wird. Der Wert für die GUID der Verfügbarkeitsgruppen-Datenbank entspricht dem group_database_id-Wert in sys.databases.

Vollständige Datenbanksicherung

SQL Server Managed Backup to Microsoft Azure Agent plant eine vollständige Datenbanksicherung, wenn einer der folgenden Werte zutrifft.

  • Eine Datenbank ist SQL Server Managed Backup für Microsoft Azure zum ersten Mal aktiviert oder wenn SQL Server Managed Backup auf Microsoft Azure mit Standardeinstellungen auf Instanzebene aktiviert ist.

  • Das Anwachsen der Protokollgröße seit der letzten vollständigen Datenbanksicherung entspricht 1 GB oder mehr.

  • Das maximale Zeitintervall von einer Woche seit der letzten vollständigen Datenbanksicherung wurde überschritten.

  • Die Protokollkette ist unterbrochen. SQL Server Managed Backup to Microsoft Azure überprüft regelmäßig, ob die Protokollkette intakt ist, indem die erste und letzte LSNs der Sicherungsdateien verglichen werden. Wenn aus irgendeinem Grund Unterbrechungen in der Protokollkette auftreten, plant SQL Server Managed Backup in Microsoft Azure eine vollständige Datenbanksicherung. Die häufigste Ursache für die Unterbrechung einer Protokollkette ist ein Sicherungsbefehl, der entweder mit Transact-SQL oder über eine Sicherungsaufgabe in SQL Server Management Studio ausgeführt wurde. Weitere häufige Szenarien sind das versehentliche Löschen der Sicherungsprotokolldateien oder das versehentliche Überschreiben von Sicherungen.

Transaktionsprotokollsicherung

SQL Server Managed Backup to Microsoft Azure plant eine Protokollsicherung, wenn einer der folgenden Werte zutrifft:

  • Es gibt keinen Protokollsicherungsverlauf, der gefunden werden kann. Dies gilt in der Regel, wenn SQL Server Managed Backup für Microsoft Azure zum ersten Mal aktiviert ist.

  • Der belegte Speicher für die Transaktionsprotokolle beträgt 5 MB oder mehr.

  • Das maximale Zeitintervall von 2 Stunden seit der letzten Protokollsicherung wurde erreicht.

  • Wenn die Sicherung des Transaktionsprotokolls hinter einer vollständigen Datenbanksicherung zurückbleibt. Das Ziel besteht darin, die Protokollkette vor der vollständigen Sicherung zu halten.

Beibehaltungsdauereinstellungen

Beim Aktivieren der Sicherung müssen Sie den Aufbewahrungszeitraum in Tagen festlegen: Der Mindestwert beträgt 1 Tag und maximal 90 Tage.

SQL Server Managed Backup to Microsoft Azure based on the retention period settings, assesses the ability to a point in time in the specified time, to determine what backup files to keep and determine the backup files to delete. Über backup_finish_date der Sicherung wird die in den Beibehaltungsdauereinstellungen angegebene Zeit ermittelt und abgeglichen.

Wichtige Überlegungen

Wenn für eine Datenbank ein vollständiger Datenbanksicherungsauftrag ausgeführt wird, wartet SQL Server Managed Backup auf Microsoft Azure, bis der aktuelle Auftrag abgeschlossen ist, bevor eine weitere vollständige Datenbanksicherung für dieselbe Datenbank ausgeführt wird. Entsprechend kann nur eine Transaktionsprotokollsicherung zu einem bestimmten Zeitpunkt ausgeführt werden. Eine vollständige Datenbanksicherung und eine Transaktionsprotokollsicherung können jedoch gleichzeitig ausgeführt werden. Fehler werden als erweiterte Ereignisse protokolliert.

Wenn mehr als 10 gleichzeitige vollständige Datenbanksicherungen geplant werden, wird über den Debug-Kanal der erweiterten Ereignisse eine Warnung ausgegeben. Sql Server Managed Backup to Microsoft Azure verwaltet dann eine Prioritätswarteschlange für die verbleibenden Datenbanken, die eine Sicherung erfordern, bis alle Sicherungen geplant und abgeschlossen sind.

Hinweis

SQL Server Managed Backup wird nicht von Proxyservern unterstützt.

Support-Fähigkeit

Die folgenden Supportbeschränkungen und Überlegungen gelten speziell für SQL Server:

  • Die Sicherung der Systemdatenbanken master, modelund msdb wird unterstützt. Die Sicherung von tempdb wird nicht unterstützt.

  • Alle Wiederherstellungsmodelle werden unterstützt (vollständig, massenprotokolliert und einfach).

  • SQL Server Managed Backup für Microsoft Azure-Agent unterstützt nur vollständige Datenbank- und Protokollsicherungen. Die Dateisicherungsautomatisierung wird nicht unterstützt.

  • Der Microsoft Azure Blob Storage ist die einzige unterstützte Sicherungsspeicheroption. Sicherungen auf Datenträger oder Band werden nicht unterstützt.

  • SQL Server Managed Backup to Microsoft Azure verwendet das Feature "Backup to Block Blob". Die maximale Größe eines Blockblobs beträgt 200 GB. Die maximale Größe einer einzelnen Sicherung kann durch Verbinden jedoch bis zu 12 TB betragen. Wenn ihre Sicherungsanforderungen dies überschreiten, sollten Sie die Komprimierung verwenden und die Größe der Sicherungsdatei testen, bevor Sie SQL Server Managed Backup für Microsoft Azure einrichten. Sie können diese testen, indem Sie eine Sicherung entweder auf einem lokalen Datenträger oder manuell mithilfe der Transact-SQL-Anweisung BACKUP TO URL in einen Microsoft Azure-Speicher durchführen. Weitere Informationen finden Sie unter SQL Server Backup to URL.

  • Sql Server Managed Backup für Microsoft Azure kann einige Einschränkungen haben, wenn sie mit anderen Technologien konfiguriert sind, die Sicherung, hohe Verfügbarkeit oder Notfallwiederherstellung unterstützen.

  • Sicherungen von Datenbanken in einer Verfügbarkeitsgruppe sind eine copy_only Sicherung.

Weitere Informationen