Automatisierte Sicherung für SQL Server 2014-VMs (Resource Manager)

GILT FÜR: SQL Server auf Azure-VMs

Die automatisierte Sicherung konfiguriert automatisch Managed Backup für Microsoft Azure für alle vorhandenen und neuen Datenbanken auf einer Azure-VM, auf der SQL Server 2014 Standard oder Enterprise ausgeführt wird. Dies bietet Ihnen die Möglichkeit, reguläre Datenbanksicherungen zu konfigurieren, die permanenten Azure Blob Storage nutzen. Das automatisierte Sichern basiert auf der Erweiterung für den SQL Server-Infrastructure-as-a-Service (IaaS)-Agent.

Hinweis

Azure verfügt über zwei verschiedene Bereitstellungsmodelle zum Erstellen und Verwenden von Ressourcen: Azure Resource Manager-Bereitstellung und klassische Bereitstellung. In diesem Artikel wird die Verwendung des Resource Manager-Bereitstellungsmodells beschrieben. Es wird empfohlen, für neue Bereitstellungen anstelle des klassischen Bereitstellungsmodells das Resource Manager-Bereitstellungsmodell zu verwenden.

Voraussetzungen

Beachten Sie bei der Verwendung der automatisierten Sicherung die folgenden Voraussetzungen:

Betriebssystem:

  • Windows Server 2012 und höher

SQL Server-Version/-Edition:

  • SQL Server 2014 Standard
  • SQL Server 2014 Enterprise

Hinweis

Informationen zu SQL 2016 und höher finden Sie unter Automatisierte Sicherung v2 für virtuelle Azure-Computer (Resource Manager).

Datenbankkonfiguration:

  • Zielbenutzerdatenbanken müssen das vollständige Wiederherstellungsmodell verwenden. Für Systemdatenbanken muss nicht das vollständige Wiederherstellungsmodell verwendet werden. Wenn Sie allerdings Protokollsicherungen für das Modell oder für msdb benötigen, müssen Sie das vollständige Wiederherstellungsmodell verwenden. Weitere Informationen zu den Auswirkungen des vollständigen Wiederherstellungsmodells auf Sicherungen finden Sie unter Sichern beim vollständigen Wiederherstellungsmodell.
  • Die SQL Server-VM wurde mit der SQL-IaaS-Agent-Erweiterung im Verwaltungsmodus „Vollständig“ registriert.
  • Die automatisierte Sicherung basiert auf der vollständigen Erweiterung für den SQL Server-IaaS-Agent. Daher wird die automatisierte Sicherung nur für Zieldatenbanken von der Standardinstanz oder eine einzelne benannte Instanz unterstützt. Wenn keine Standardinstanz und mehrere benannte Instanzen vorhanden sind, kann die SQL-IaaS-Erweiterung nicht ausgeführt werden, und die automatisierte Sicherung funktioniert nicht.

Einstellungen

In der folgenden Tabelle werden die Optionen beschrieben, die für die automatisierte Sicherung konfiguriert werden können. Die tatsächlichen Konfigurationsschritte variieren abhängig davon, ob Sie das Azure-Portal oder Azure Windows PowerShell-Befehle verwenden.

Einstellung Bereich (Standard) BESCHREIBUNG
Automatisierte Sicherung Aktivieren/Deaktivieren (deaktiviert) Aktiviert oder deaktiviert die automatisierte Sicherung für eine Azure-VM mit SQL Server 2014 Standard oder Enterprise.
Aufbewahrungszeitraum 1 bis 30 Tage (30 Tage) Die Anzahl von Tagen, für die eine Sicherung aufbewahrt wird.
Speicherkonto Azure-Speicherkonto Ein Azure-Speicherkonto, mit dem Dateien der automatisierten Sicherung im Blob-Speicher gespeichert werden. An diesem Speicherort wird ein Container zum Speichern aller Sicherungsdateien erstellt. Die Namenskonvention für die Sicherungsdatei enthält das Datum, die Uhrzeit und den Computernamen.
Verschlüsselung Aktivieren/Deaktivieren (deaktiviert) Aktiviert oder deaktiviert die Verschlüsselung. Wenn die Verschlüsselung aktiviert ist, befinden sich die Zertifikate zum Wiederherstellen der Sicherung im angegebenen Speicherkonto im gleichen automaticbackup-Container (mit der gleichen Namenskonvention). Wenn das Kennwort geändert wird, wird ein neues Zertifikat mit diesem Kennwort generiert, das alte Zertifikat bleibt jedoch zum Wiederherstellen vorheriger Sicherungen erhalten.
Kennwort Kennworttext Ein Kennwort für Verschlüsselungsschlüssel. Ein Kennwort ist nur erforderlich, wenn die Verschlüsselung aktiviert ist. Um eine verschlüsselte Sicherung wiederherzustellen, benötigen Sie das richtige Kennwort und das zugehörige Zertifikat, das beim Erstellen der Sicherung verwendet wurde.

Konfigurieren neuer VMs

Verwenden Sie das Azure-Portal zum Konfigurieren der automatisierten Sicherung, wenn Sie einen neuen virtuellen Computer mit SQL Server 2014 im Resource Manager-Bereitstellungsmodell erstellen.

Scrollen Sie auf der Registerkarte SQL Server-Einstellungen nach unten zu Automatisierte Sicherung, und wählen Sie Aktivieren aus. Auf dem folgenden Screenshot des Azure-Portals sehen Sie die Einstellungen für Automatisierte SQL-Sicherung.

Konfigurieren der automatisierten SQL-Sicherung im Azure-Portal

Konfigurieren vorhandener VMs

Für vorhandene SQL Server-VMs können Sie automatisierte Sicherungen aktivieren und deaktivieren, die Beibehaltungsdauer ändern, das Speicherkonto angeben und die Verschlüsselung über das Azure-Portal aktivieren.

Navigieren Sie für Ihren virtuellen SQL Server 2014-Computer zur Ressource für virtuelle SQL-Computer, und wählen Sie dann Sicherungen aus.

Automatisierte SQL-Sicherung für vorhandene virtuelle Computer

Wählen Sie abschließend die Schaltfläche Übernehmen am unteren Rand der Seite Sicherungen aus, um Ihre Änderungen zu speichern.

Falls Sie die automatisierte Sicherung zum ersten Mal aktivieren, konfiguriert Azure den SQL Server-IaaS-Agent im Hintergrund. Im Azure-Portal wird währenddessen u.U. nicht angezeigt, dass die automatisierte Sicherung konfiguriert wird. Warten Sie einige Minuten, bis der Agent installiert und konfiguriert wurde. Danach werden die neuen Einstellungen im Azure-Portal angezeigt.

Hinweis

Sie können die automatisierte Sicherung auch mithilfe einer Vorlage konfigurieren. Weitere Informationen finden Sie unter Azure quickstart template for Automated Backup(Azure-Schnellstartvorlage für die automatisierte Sicherung).

Konfigurieren mithilfe von PowerShell

Die automatisierte Sicherung kann mithilfe von PowerShell konfiguriert werden. Führen Sie zur Vorbereitung folgende Schritte aus:

Hinweis

In diesem Artikel wird das Azure Az PowerShell-Modul verwendet. Dieses PowerShell-Modul wird für die Interaktion mit Azure empfohlen. Informationen zu den ersten Schritten mit dem Az PowerShell-Modul finden Sie unter Installieren von Azure PowerShell. Informationen zum Migrieren zum Az PowerShell-Modul finden Sie unter Migrieren von Azure PowerShell von AzureRM zum Az-Modul.

Überprüfen der aktuellen Einstellungen

Wenn Sie die automatisierte Sicherung während der Bereitstellung aktiviert haben, können Sie mithilfe von PowerShell Ihre aktuelle Konfiguration überprüfen. Führen Sie den Befehl Get-AzVMSqlServerExtension aus, und sehen Sie sich die Eigenschaft AutoBackupSettings an:

(Get-AzVMSqlServerExtension -VMName $vmname -ResourceGroupName $resourcegroupname).AutoBackupSettings

Die Ausgabe sollte in etwa wie folgt aussehen:

Enable                      : False
EnableEncryption            : False
RetentionPeriod             : -1
StorageUrl                  : NOTSET
StorageAccessKey            : 
Password                    : 
BackupSystemDbs             : False
BackupScheduleType          : 
FullBackupFrequency         : 
FullBackupStartTime         : 
FullBackupWindowHours       : 
LogBackupFrequency          : 

Falls Sie in der Ausgabe sehen, dass Enable auf False festgelegt ist, müssen Sie die automatisierte Sicherung aktivieren. Die gute Nachricht: Die Vorgehensweise zum Aktivieren der automatisierten Sicherung unterscheidet sich nicht von der Vorgehensweise zum Konfigurieren. Entsprechende Informationen finden Sie im nächsten Abschnitt.

Hinweis

Wenn Sie eine Änderung vorgenommen haben und die Einstellungen direkt danach überprüfen, werden unter Umständen noch die alten Konfigurationswerte zurückgegeben. Warten Sie einige Minuten, und überprüfen Sie die Einstellungen dann erneut, um sich zu vergewissern, dass die Änderungen angewendet wurden.

Konfigurieren der automatisierten Sicherung

Mithilfe von PowerShell können Sie die automatisierte Sicherung nicht nur aktivieren, sondern auch jederzeit ihre Konfiguration und ihr Verhalten ändern.

Wählen Sie zunächst ein Speicherkonto für die Sicherungsdateien aus, oder erstellen Sie eines. Das folgende Skript wählt ein Speicherkonto aus. Ist kein Speicherkonto vorhanden, wird eines erstellt.

$storage_accountname = "yourstorageaccount"
$storage_resourcegroupname = $resourcegroupname

$storage = Get-AzStorageAccount -ResourceGroupName $resourcegroupname `
    -Name $storage_accountname -ErrorAction SilentlyContinue
If (-Not $storage)
    { $storage = New-AzStorageAccount -ResourceGroupName $storage_resourcegroupname `
    -Name $storage_accountname -SkuName Standard_GRS -Location $region }

Hinweis

Die automatisierte Sicherung unterstützt zwar nicht das Speichern von Sicherungen in Storage Premium, kann aber Sicherungen von VM-Datenträgern erstellen, die Storage Premium verwenden.

Verwenden Sie dann den Befehl New-AzVMSqlServerAutoBackupConfig, um die Einstellungen der automatisierten Sicherung so zu konfigurieren, dass Sicherungen in dem Azure Storage-Konto gespeichert werden. In diesem Beispiel werden die Sicherungen zehn Tage lang aufbewahrt. Der zweite Befehl, Set-AzVMSqlServerExtension, aktualisiert den angegebenen virtuellen Azure-Computer mit diesen Einstellungen.

$autobackupconfig = New-AzVMSqlServerAutoBackupConfig -Enable `
    -RetentionPeriodInDays 10 -StorageContext $storage.Context `
    -ResourceGroupName $storage_resourcegroupname

Set-AzVMSqlServerExtension -AutoBackupSettings $autobackupconfig `
    -VMName $vmname -ResourceGroupName $resourcegroupname

Die Installation und Konfiguration des SQL Server-IaaS-Agents kann mehrere Minuten in Anspruch nehmen.

Hinweis

Es gibt andere Einstellungen für New-AzVMSqlServerAutoBackupConfig, die nur für SQL Server 2016 und die automatisierte Sicherung v2 gelten. Die folgenden Einstellungen werden von SQL Server 2014 nicht unterstützt: BackupSystemDbs, BackupScheduleType, FullBackupFrequency, FullBackupStartHour, FullBackupWindowInHours und LogBackupFrequencyInMinutes. Wenn Sie versuchen, diese Einstellungen auf einem virtuellen Computer mit SQL Server 2014 zu konfigurieren, wird zwar kein Fehler angezeigt, doch die Einstellungen werden nicht angewendet. Wenn Sie diese Einstellungen auf einem virtuellen Computer mit SQL Server 2016verwenden möchten, siehe Automatisierte Sicherung v2 für Azure-VMs mit SQL Server 2016.

Um die Verschlüsselung zu aktivieren, ändern Sie das vorherige Skript, um den EnableEncryption-Parameter und ein Kennwort (sichere Zeichenfolge) für den CertificatePassword-Parameter zu übergeben. Das folgende Skript aktiviert die Einstellungen der automatisierten Sicherung im vorherigen Beispiel und fügt die Verschlüsselung hinzu.

$password = "P@ssw0rd"
$encryptionpassword = $password | ConvertTo-SecureString -AsPlainText -Force

$autobackupconfig = New-AzVMSqlServerAutoBackupConfig -Enable `
    -EnableEncryption -CertificatePassword $encryptionpassword `
    -RetentionPeriodInDays 10 -StorageContext $storage.Context `
    -ResourceGroupName $storage_resourcegroupname

Set-AzVMSqlServerExtension -AutoBackupSettings $autobackupconfig `
    -VMName $vmname -ResourceGroupName $resourcegroupname

Überprüfen Sie die Konfiguration der automatisierten Sicherung, um sich zu vergewissern, dass Ihre Einstellungen angewendet wurden.

Deaktivieren der automatisierten Sicherung

Führen Sie zum Deaktivieren der automatisierten Sicherung das gleiche Skript ohne den Parameter -Enable für den Befehl New-AzVMSqlServerAutoBackupConfig aus. Das Fehlen des Parameters -Enable signalisiert dem Befehl, die Funktion zu deaktivieren. Ähnlich wie die Installation kann auch das Deaktivieren der automatisierten Sicherung mehrere Minuten dauern.

$autobackupconfig = New-AzVMSqlServerAutoBackupConfig -ResourceGroupName $storage_resourcegroupname

Set-AzVMSqlServerExtension -AutoBackupSettings $autobackupconfig `
    -VMName $vmname -ResourceGroupName $resourcegroupname

Beispielskript

Das folgende Skript stellt einen Satz von Variablen bereit, die Sie anpassen können, um die automatisierte Sicherung für Ihren virtuellen Computer zu aktivieren und zu konfigurieren. Unter Umständen müssen Sie das Skript an Ihre individuellen Anforderungen anpassen. So müssen Sie das Skript beispielsweise ändern, wenn Sie die Sicherung von Systemdatenbanken deaktivieren oder die Verschlüsselung aktivieren möchten.

$vmname = "yourvmname"
$resourcegroupname = "vmresourcegroupname"
$region = "Azure region name such as EASTUS2"
$storage_accountname = "storageaccountname"
$storage_resourcegroupname = $resourcegroupname
$retentionperiod = 10

# ResourceGroupName is the resource group which is hosting the VM where you are deploying the SQL Server IaaS Extension

Set-AzVMSqlServerExtension -VMName $vmname `
    -ResourceGroupName $resourcegroupname -Name "SQLIaasExtension" `
    -Version "2.0" -Location $region

# Creates/use a storage account to store the backups

$storage = Get-AzStorageAccount -ResourceGroupName $resourcegroupname `
    -Name $storage_accountname -ErrorAction SilentlyContinue
If (-Not $storage)
    { $storage = New-AzStorageAccount -ResourceGroupName $storage_resourcegroupname `
    -Name $storage_accountname -SkuName Standard_GRS -Location $region }

# Configure Automated Backup settings

$autobackupconfig = New-AzVMSqlServerAutoBackupConfig -Enable `
    -RetentionPeriodInDays $retentionperiod -StorageContext $storage.Context `
    -ResourceGroupName $storage_resourcegroupname

# Apply the Automated Backup settings to the VM

Set-AzVMSqlServerExtension -AutoBackupSettings $autobackupconfig `
    -VMName $vmname -ResourceGroupName $resourcegroupname

Überwachung

Zur Überwachung der automatisierten Sicherung in SQL Server 2014 stehen Ihnen im Wesentlichen zwei Optionen zur Verfügung. Da die automatisierte Sicherung das SQL Server-Feature Managed Backup verwendet, gelten für beide Optionen die gleichen Überwachungstechniken.

Zum einen können Sie den Status durch Aufruf von msdb.smart_admin.sp_get_backup_diagnostics abrufen. Die andere Möglichkeit besteht darin, die Tabellenwertfunktion msdb.smart_admin.fn_get_health_status abzufragen.

Hinweis

Das Schema für Managed Backup in SQL Server 2014 lautet msdb.smart_admin. In SQL Server 2016 wurde dies zu msdb.managed_backup geändert, und die Referenzthemen verweisen dieses neuere Schema. Für SQL Server 2014 müssen Sie jedoch für alle Managed Backup-Objekte weiterhin das smart_admin-Schema verwenden.

Eine andere Option besteht darin, das integrierte Datenbank-E-Mail-Feature für Benachrichtigungen zu verwenden.

  1. Rufen Sie die gespeicherte Prozedur msdb.smart_admin.sp_set_parameter auf, um dem Parameter SSMBackup2WANotificationEmailIds eine E-Mail-Adresse zuzuweisen.
  2. Aktivieren Sie SendGrid, um die E-Mails von der Azure-VM zu senden.
  3. Verwenden Sie den SMTP-Server und den Benutzernamen, um das Datenbank-E-Mail-Feature zu konfigurieren. Sie können das Datenbank-E-Mail-Feature in SQL Server Management Studio oder mithilfe von Transact-SQL-Befehlen konfigurieren. Weitere Informationen finden Sie unter Datenbank-E-Mail.
  4. Konfigurieren Sie den SQL Server-Agent für die Verwendung von Datenbank-E-Mail.
  5. Stellen Sie sicher, dass der SMTP-Port sowohl in der lokalen VM-Firewall als auch in der Netzwerksicherheitsgruppe für die VM zugelassen ist.

Nächste Schritte

Die automatisierte Sicherung konfiguriert Managed Backup für Azure-VMs. Lesen Sie daher unbedingt die Dokumentation für Managed Backup in SQL Server 2014.

Weitere Informationen zur Sicherung und Wiederherstellung für SQL Server auf Azure-VMs finden Sie im folgenden Artikel: Sicherung und Wiederherstellung für SQL Server auf Azure-VMs.

Informationen zu anderen verfügbaren Automatisierungsaufgaben finden Sie unter SQL Server-Agent-Erweiterung für virtuelle SQL Server-Computer (klassisch).

Ausführlichere Informationen zur Ausführung von SQL Server auf virtuellen Azure-Computern finden Sie unter Übersicht zu SQL Server auf Azure-VMs.