News:
Microsoft SQL Server Backup mittels Maintenance Plans - Vor- und Nachteile sowie eine Alternative

Mit den Maintenance Plans lassen sich nicht alle Backup-Strategien umsetzen.

Icon Unternehmen

In einem relationalem Datenbankmanagementsystem wie dem Microsoft SQL Server sind Backups zwingend notwendig. Damit können nicht nur korrupte Dateien bzw. Datenbankobjekte, sondern auch fehlende/fehlerhafte Daten durch Fehler in Applikationen bzw. unüberlegten Abfragen (bspw. Deletes ohne Where-Klauseln) wiederhergestellt werden.

Microsoft selbst bietet über die Maintenance Plans eine Möglichkeit an, Voll- sowie Log-Backups einer oder mehrerer Datenbanken zu planen. Backups über Maintenance Plans können über einen leicht verständlichen Workflow recht einfach eingerichtet werden und haben einige Vorteile. Dazu zählen u.a.

  • die automatische Anlage eines Unterordners für jede gesicherte Datenbank,
  • die automatische Erzeugung eines aussagekräftigen Namens für jede Backup-Datei,
  • eine einfache Anzeige aller Schritte eines Backup-Jobs über den Workflow und
  • der Versand eines Berichts an eine E-Mail-Adresse nach der Backup-Ausführung


Hier ist ein Beispiel eines Workflows zu sehen. Über die Toolbox – im Bild oben links – können die Tasks zum Workflow hinzugefügt werden.

Microsoft SQL Server Workflow

Die Maintenance Plans verursachen allerdings unter bestimmten Umständen einen Mehraufwand bzw. können bestimmte Konstellationen nicht abbilden.

Beispielsweise sollten Maintenenance Plans bei der Verwendung von Always On Availability Groups nicht über einen Availability Group Listener angelegt werden. Stattdessen sollte diese direkt auf dem jeweiligem Hostnamen des Nodes erstellt werden, damit der Maintenance Plan nach einem Schwenk keinen Fehler wirft.

Auch werden Log-Backups bei Datenbanken in einer LogShipping Konfiguration nicht automatisch ignoriert. Diese müssen manuell im Maintenance Plan abgewählt werden.

Mit dem SQL Server 2016 gibt es eine weitere Hürde: Backups von Datenbanken, die nicht “online” sind, werden nicht ignoriert. Standardmäßig werden zehn fehlgeschlagene Logins gemeldet und erzeugen dadurch Einträge im SQL Server Error Log.

Microsoft SQL Server Error Log
 

Abhilfe schafft hier die kostenfreie Skriptsammlung  “SQL Server Maintenance Solution” von Ola Hallengren.

Am Beispiel einer Vollsicherung werden folgende Schritte umgestetzt:

  • Ausführung des Skriptes  MaintenanceSolution.sql auf der Instanz:
    Es werden unter anderem Backups-Jobs eingerichtet. Daneben werden noch die Jobs (sp_delete_backuphistory, sp_purge_jobhistory und Output File Cleanup) zum Löschen veralteter Einträge in der Job-History angelegt.
  • Im Anschluss müssen für diese Jobs noch Schedules angelegt werden.

    Microsoft SQL Server Job Properties - Scheduler
     
  • Für fehlgeschlagende Backups kann ebenfalls eine E-Mail-Benachrichtigung eingerichtet werden.
  • Aufgetretene Fehler werden in eine Textdatei geloggt, die im SQL Server Log-Verzeichnis abgelegt wird.

    Microsoft SQL Server Error Log


Fazit

Der Einsatz von Maintenance Plans ist für kleinere Systeme durchaus sinnvoll, stößt aber bei größeren Umgebungen schnell an ihre Grenzen. Hier kann die Skriptsammlung “SQL Server Maintenance Solution“ von Ola Hallengren verwendet werden. Die Konfiguration ist denkbar einfach und kann an verschiedenste Bedürfnisse angepasst werden.

Sie benötigen Unterstützung bei der Entwicklung oder Umsetzung einer Backup-Strategie? Gerne unterstützen wir Sie dabei.