Veeam Application Aware-Verarbeitung vs. Native SQL-BackupsVeeam
Einleitung
Veeam bietet verschiedene Möglichkeiten zur Durchführung von SQL-Backups. Einige der unten aufgeführten Optionen schließen sich jedoch gegenseitig aus, d.h. wenn Sie z.B. die Optionen 1 und 2 konfigurieren, werden sich SQL- und Veeam-Backups gegenseitig stören und die Datenbank-Backups völlig unbrauchbar machen. Die Konfiguration dieser Einstellungen erfordert daher Planung und Vorsicht.
Option 1: Verwenden Sie NUR die anwendungsbezogene Verarbeitung von Veeam
In diesem Fall wird bei jedem Server-Backup auch SQL auf eine spezielle Art und Weise gesichert, bei der die Transaktionsprotokolle abgeschnitten werden. Diese Backups werden als vollständige SQL-Backups betrachtet. Wenn Sie sich für diesen Anwendungsfall entscheiden, aktivieren Sie KEINE nativen SQL-Backups!
Pro: Sie können ein sekundäres Backup-Repository konfigurieren, z. B. ein Cloud-Repository, anstatt Ihre Datenbank-Backups nur lokal zu speichern. (Dies kann im Falle eines Disaster-Recovery-Vorgangs sehr nützlich sein).
Contra: Dieser SQL-Sicherungstyp wird zusammen mit der VM-Sicherung ausgeführt. Sie können zwar NUR SQL aus einem solchen Backup wiederherstellen, aber VM-Backups finden in der Regel nur einmal am Tag statt, was den Anforderungen Ihres Business-Continuity-Plans möglicherweise nicht genügt. Z.B., wenn eine häufige Log-Sicherung erforderlich ist.
Konfiguration
Um zu sehen, wie Sie einen Auftrag in Veeam Backup and Replication konfigurieren, klicken Sie hier.
Aktivieren Sie im Schritt Gastverarbeitung der Konfiguration eines Sicherungsauftrags die Option Anwendungsbezogene Verarbeitung aktivieren.
Geben Sie die Anmeldeinformationen für das Gastbetriebssystem an. (Dies ist in der Regel ein Administratorkonto der VM, die Sie sichern - es muss über Systemadministrator-Zugriff auf den SQL-Server verfügen).
Bearbeiten Sie die VM, die den SQL-Server enthält, und wählen Sie Ihre Einstellungen.
Die Standardeinstellungen:
- Erfolgreiche Verarbeitung voraussetzen (wir empfehlen diese Option dringend)
- Transaktionsprotokolle verarbeiten
- Und auf der Registerkarte SQL: Protokolle abschneiden
Wenn Ihr Auftrag mehrere VMs enthält, aber nur eine (oder einige) eine anwendungsbezogene Verarbeitung benötigt, bearbeiten Sie die betreffende VM (die keine anwendungsbezogene Verarbeitung benötigt) und klicken Sie auf der Registerkarte Allgemein auf Anwendungsbezogene Verarbeitung deaktivieren). Damit versetzen Sie die VM in den Modus "Nur Kopieren", d.h. die Dateien der VM werden nur so kopiert, wie sie bei einem normalen VM-Backup-Prozess kopiert werden.
Option 2: NUR natives SQL-Backup verwenden
Aktivieren Sie in diesem Fall NICHT die anwendungsbezogene Gastverarbeitung für den Veeam-Job. Konfigurieren Sie nur das native SQL-Backup.
Pro: Sie können beliebig häufige Log-Backups konfigurieren (sogar in 15-Minuten-Intervallen).
Contra: Sie können keinen sekundären Zielspeicherort konfigurieren (z. B. ein Cloud Repo).
Konfiguration
Bitte lesen Sie diesen Artikel, um SQL Native Backups zu konfigurieren.
Was passiert, wenn Sie sowohl Option 1 als auch Option 2 aktivieren?
Backup Ketten
Es gibt 3 Arten von SQL-Backups, wenn Sie Ihren SQL-Server nativ über das SQL Server Management Studio sichern: vollständige, differenzielle und Transaktionsprotokoll-Backups.
Wenn Sie das einfache Wiederherstellungsmodell verwenden, gibt es keine Transaktionsprotokoll-Backups, aber Sie können trotzdem differenzielle und vollständige Backups einrichten.
Differenzial- und Protokollsicherungen werden immer auf der letzten Vollsicherung + ALLEN Differenzial- und Protokollsicherungen aufgebaut, die zwischen der letzten Vollsicherung und der wiederherzustellenden Differenzialsicherung erstellt wurden.
Ein Beispiel: Im Screenshot möchte ich den Zustand wiederherstellen, der im letzten Transaktionsprotokoll gesichert wurde. Ich kann nicht NUR diese eine Protokollsicherung wiederherstellen. Alle drei Sicherungen (1 Vollsicherung + 1 Differenzsicherung) müssen wiederhergestellt werden, damit die Log-Sicherung verwendbar ist.
Wenn Sie bei der letzten Logsicherung ein Häkchen setzen, werden die beiden anderen Sicherungen automatisch ausgewählt.
Interferenzen in den Backup Ketten
Veeam erstellt bei jeder Ausführung des Sicherungsauftrags ein Voll-Backup. SQL erkennt, dass ein Voll-Backup ausgeführt wurde und setzt die Backup-Kette fort, indem es alle nachfolgenden differentiellen und Log-Backups auf diesem Veeam-Voll-Backup aufbaut. ABER es hat keinen Zugriff auf das Veeam-Vollbackup. Wenn Sie also versuchen, diese Sicherungskette wiederherzustellen, fehlt Ihr Voll-Backup, so dass SQL nicht in der Lage ist, die nachfolgenden Differenzial- und Protokoll-Backups wiederherzustellen.
die Wiederherstellung wird fehlschlagen.
Möglicherweise können Sie die Datenbank aus Ihren VM-Sicherungen wiederherstellen, aber Sie verlieren die Genauigkeit Ihrer Differenzial- und Protokollsicherungen.
Option 3: Hybrid-Modus - Verwendung von Veeam und SQL-Backup mit speziellen Einstellungen
Veeam ist flexibel, was die möglichen Einstellungen angeht. Wenn Sie die Granularität und Einfachheit der Wiederherstellung Ihrer lokalen Log-Backups UND ein tägliches Voll-Backup z.B. auf einem sekundären (Cloud-)Ziel benötigen, ist es möglich, beides zu nutzen.
Pro: Sie können die nativen SQL-Backups auf Ihrem SQL-Server einrichten. Das bedeutet, dass Sie eine flexiblere Planungsmöglichkeit haben, während Sie weiterhin jedes Mal, wenn das Veeam VM-Backup ausgeführt wird, ein Voll-Backup an einen sekundären Speicherort übertragen lassen können, ohne sich gegenseitig zu behindern.
Im Gegensatz dazu wird das Cloud-Backup einen täglichen Status wiedergeben (nicht so granular). Perfekt für Disaster-Recovery-Szenarien, aber das hängt von den Richtlinien und Anforderungen Ihres Unternehmens ab.
Konfiguration
Klicken Sie während der Auftragskonfiguration auf der Registerkarte "Gastverarbeitung" auf die virtuelle Maschine, die Sie mit anwendungsorientierter Verarbeitung konfigurieren möchten.
Klicken Sie auf Bearbeiten...
Wählen Sie auf der Registerkarte Allgemein unter Transaktionsprotokolle die Option Nur Kopie durchführen (lässt eine andere Anwendung die Protokolle verwenden)
Klicken Sie auf OK und führen Sie die restlichen Schritte des Assistenten aus.
Auch nach einem Veeam VM-Backup sehen Sie Ihre komplette Backup-Kette und haben sie in SQL verfügbar:
Option 4: Veeam Transaktionsprotokoll-Backups verwenden
Aktivieren Sie bei dieser Option (genau wie bei Option 1) KEINE nativen SQL-Backups. Diese würden die Veeam-Backups beeinträchtigen.
Pro: Sie haben eine große Genauigkeit bei der Planung (und den verfügbaren Wiederherstellungspunkten) nicht nur lokal, sondern auch auf einem möglichen sekundären Ziel.
Contra: Wiederherstellungen erfordern umfangreiche Vorbereitungen. Sie benötigen einen Staging-SQL-Server, um Ihre Log-Backups nutzen zu können.
Konfiguration
Klicken Sie während der Auftragskonfiguration auf der Registerkarte Gastverarbeitung auf die virtuelle Maschine, die Sie mit anwendungsorientierter Verarbeitung konfigurieren möchten.
Klicken Sie auf Bearbeiten...
Lassen Sie auf der Registerkarte Allgemein die folgenden Standardeinstellungen:
- Erfolgreiche Verarbeitung voraussetzen (wir empfehlen diese Option dringend)
- Transaktionsprotokolle verarbeiten
Wählen Sie auf der Registerkarte SQL die Option Protokolle regelmäßig sichern (gesicherte Protokolle werden abgeschnitten) und wählen Sie die gewünschte Häufigkeit (Standard ist 15 Minuten).
Wählen Sie die Einstellungen, wie lange die Protokolldateien auf der Grundlage der Richtlinien Ihres Unternehmens aufbewahrt werden sollen.
Klicken Sie auf OK und führen Sie die restlichen Schritte des Assistenten aus.
Warum sollte man die native SQL-Sicherung mit Option 4 deaktivieren?
Wenn Sie das native SQL-Backup aktivieren und Veeam auch die Log-Backups durchführen lassen, sehen Sie im Wiederherstellungsfenster sowohl Ihre eigene native Backup-Kette als auch das Veeam-Backup Ihrer Logs. Dies ist jedoch irreführend. Ihre Backup-Kette ist nicht mehr verwendbar.
Wenn Sie versuchen, ein solches Voll-Backup + ein Veeam-Log-Backup (oder mehrere Log-Backups) wiederherzustellen, könnte das Voll-Backup funktionieren, da Voll-Backups alle Informationen enthalten, die für eine Wiederherstellung benötigt werden. Allerdings können Sie die Veeam-Log-Backups nicht darauf "aufbauen": Sie erhalten die Fehlermeldung "Das System kann die angegebene Datei nicht finden".
Wenn Sie den angegebenen Pfad überprüfen, wird er leer sein.
Die Veeam Knowledge Base enthält die Erklärung:
Veeam Agent für Microsoft Windows kopiert die Transaktionsprotokolldateien vom Ziel des Protokollarchivs (vom Microsoft SQL Server-Administrator festgelegt) in einen temporären Ordner auf dem Dateisystem des Veeam Agent-Computers.
Veeam Agent für Microsoft Windows transportiert die Transaktionsprotokoll-Backup-Kopien aus dem temporären Ordner zum Backup-Speicherort und speichert sie als VLB-Dateien. Sobald die Kopien der Transaktionsprotokoll-Backups am Backup-Speicherort gespeichert sind, werden die Transaktionsprotokoll-Backups im temporären Ordner auf dem Veeam Agent-Computer entfernt.
https://helpcenter.veeam.com/docs/agentforwindows/userguide/sql_backup_hiw.html?ver=50
Wenn Sie Ihren Sicherungsordner überprüfen, werden Sie die VLB-Dateien sehen.
Diese Dateien können über den Wiederherstellungsprozess von Veeam Backup of Replication, Application Items Restore verwendet werden, bei dem Sie einen Zeitpunkt angeben können, den Sie - basierend auf den gesicherten Transaktionsprotokollen - wiederherstellen möchten.
Diese Funktion erfordert jedoch die Verwendung eines Staging-SQL-Servers.
Mehr über SQL-Backups und Veeam hier.
No Comments