Kostenloses Backup-Tool von Key Metric Software

Von Key Metric Software gibt es ein kostenloses Backup Tool für lokale und remote SQL Server mit vielen verschiedenen Optionen, wo das erstellte Backup abgelegt werden soll.

Download und Installation

Dieser Teil ist schnell erledigt. Der Download funktioniert ohne Registrierung und auch die Installation benötigt kein Benutzerkonto beim Hersteller oder die Preisgabe irgendwelcher Kontaktdaten. Also wirklich alles kostenlos und ohne Verbindlichkeiten zu bekommen.

Erster Aufruf

Die erste Maske ist ziemlich aufgeräumt und bietet auch nur wenige Funktionen, aber viel mehr brauchen wir ja auch nicht für unsere Backups.
Starten wir also einfach mal mit den ersten Punkt "Create new Database Backup".

Die Optionen für "Source" sind wenig spektakulär, und selbstsprechend. Wenn wir die Verbindung zu einem Server hergestellt haben, können wir die dortigen Datenbanken für das Backup auswählen. Hierzu ist dann ggf. noch etwas an den Sicherheitseinstellungen zu schrauben, bei lokalen Servern ist dies aber erst mal kein Problem.

Ziele und Editionen

Jetzt wird es schon spannender, wenn wir definieren, wohin unser Backup gehen soll. Hier stehen anders als in Wartungsplänen diverse Optionen zur Verfügung. Die ersten vier Optionen sind in der kostenlosen Lizenz enthalten.

Für die anderen Optionen (Google Drive, OneDrive, Amazon S3, Azure Storage) gibt es die Standard oder Professional Edition, die dann aber kostenpflichtig ist. Temporär kann man seine Installation aber auch zu einer dieser Editionen upgraden und kann dann 30 Tage lang testen, ob sie das gewünschte leisten kann. Wer sich hinter einer Firewall versteckt muss natürlich entsprechende Vorkehrungen treffen, um auch die gewünschten Ziele erreichen zu können.

Weitere Einstellungen

Wir machen also mal ein Backup auf einen "Local or Network Folder". Ich habe wegen der einfacheren Vergabe der Berechtigungen einen lokalen Ordner verwendet.

Für die Zeitplanung gibt es diverse Möglichkeiten, die direkt auch alle drei Backup-Möglichkeiten (Vollständig, Differenziell, Transaktionsprotokoll) in einer Maske übersichtlich anordnet. Die Farbgebung ist etwas blass, aber die Maske an sich zweckmäßig. Die Zeiten können aus den Vorschlägen übernommen werden, aber auch minutengenau eingeplant werden.

Wenn wir jetzt noch definiert haben, unter welchen Windows-Konto das Backup laufen soll und wie die Verbindung zu unserem EMail-Server aussieht, bzw. in welchen Fällen wir alle per eMail informiert werden wollen, sieht die Sache schon recht vollständig aus.

Erstes Backup

In der Übersichtsmaske sehen wir jetzt auch diesen Job, und können uns allerdings auch vorstellen, dass es bei vielen Jobs schon mal etwas unübersichtlich werden kann. Als Enterprise-Lösung würde ich das Tool daher nicht sehen, aber auch genau da liegt nicht die Zielgruppe. Enterprise User haben oft strikte Vorgaben bzgl. der Verwendung einzelner Backup-Tools, oft in Verbindung mit entsprechender Roboter-Software, Auslagerungen für Feuerkopien und zentrale Administration. Dieses Tool ist aber eher für kleinere Unternehmen gedacht, oder Anwender die z. B. ihre SQL Server Express Datenbanken mit einer schicken Oberfläche sichern und wiederherstellen wollen. Außerdem sind die Optionen für die verschiedenen Sicherungsziele bestimmt in einzelnen Projekten oder Szenarien eine elegante Möglichkeit solche Anforderungen einfach zu realisieren.

Was beim Backup abläuft

Warten wir also mal ab, was so passiert. Im Hintergrund läuft ein Prozess "SQLBackupMaster.Service" der zum Service "SQL Backup Master" gehört. Wenn der gewünschte Zeitpunkt erreicht ist, startet dieser Prozess die weitere Verarbeitung.

Im Anschluss daran haben wir ein komprimiertes Backup (allerdings mit ZIP und nicht mit den SQL Server Komprimierungsmethoden) und einer Benennung, in der wir den Namen der Datenbank und den Zeitpunkt wiederfinden. Diese Benennung wird auch später verwendet, um ältere Backups automatisch wieder von der Platte zu löschen.

Interessant ist die Backup-History, denn dort ist aufgeführt, dass das ursprüngliche Backup in ein temporäres Verzeichnis gegangen ist, welches die Software angelegt hat. Ein Restore von diesem Ort kann natürlich nicht funktionieren, da sich das Backup ja mittlerweile woanders befindet. Also sollte man auch für den Restore die Software "SQL Backup Master" verwenden.

Weitere Einstellungen

Das temporäre Verzeichnis lässt sich natürlich für jeden Job einzeln konfigurieren, ebenso wann und ob überhaupt alte Backups gelöscht werden sollen.

Datenbank wiederherstellen

Das schönste Backup ist nutzlos, wenn wir es nicht für einen Restore verwenden können. Ich frage mich, wie viele Leute ihre Datenbank schon gesichert haben, ohne jemals den umgekehrten Weg ausprobiert zu haben!
Also verwenden wir jetzt mal die Option "Recover" direkt neben dem Job als Einstieg. Aber hier können wir auch andere Jobs auswählen und die Liste der Backups über die Zeit filtern. Sogar die Löschung der gefilterten Backups ist hier möglich.

Wenn wir ein Backup ausgewählt haben, kommt die obligatorische Abfrage nach den Optionen für die Wiederherstellung.

Und dann gibt es sogar noch eine Warnung, dass man überschriebene Datenbanken nicht wiederherstellen kann, wenn man vorher kein Backup davon gezogen hat. Anders als im Management Studio wird also nicht zuerst ein Log-Backup probiert, sondern nur auf die Gefahren hingewiesen.

Der Rest verläuft ziemlich unspektakulär und zügig. Nach wenigen Augenblicken haben wir aus dem gezippten Backup unsere Datenbank wiederhergestellt.

Differenzielles Backup und Errorlog

Beim Backup-Job kann man direkt über das Drop-Down Menü bei "Actions" ein differenzielles Backup anstoßen. Zusätzlich zu der Möglichkeit dies als geplante Aktion durchzuführen könnte es in gewissen Situationen hilfreich sein so schnell und unkompliziert mal eben die letzten Änderungen in ein Backup zu überführen.

Man kann den Job editieren oder löschen, aber vor allem kann man sich hier auch das Log des Jobs anschauen.

Hier wird dann in allen Einzelheiten berichtet, was der Job getan hat und mit welchem Erfolg. Für die Fehlersuche sicherlich mal ein guter Ansatzpunkt.

Besonderheiten bei Remoten Servern

Abschließend muss ich noch mal auf die Besonderheiten für remote Server eingehen. Hier muss natürlich die Sicherheit genau definiert werden, damit das Zusammenspiel funktioniert. Ob z. B. der temporäre Ordner mit den notwendigen Rechten ausgestattet ist, wird direkt bei der Eingabe in der Maske getestet. Hier ist dann natürlich ein entsprechender UNC-Pfad zu verwenden. Für den eigentlichen Ziel-Pfad gibt es dann hier die Test-Funktion. Möchte man auch hier Pfade auf dem anderen Server verwenden ist dieses entsprechend zu konfigurieren. Der Service läuft dann auf der einen Maschine und die Backups werden auf einer anderen Maschine abgelegt.

In diesem Beispiel habe ich ein Backup einer remoten Datenbank konfiguriert, aber nicht eingeplant. Ich kann also immer bei Bedarf dieses Backup manuell erstellen.

Fazit

Die Software ist in der gesamten Handhabung wirklich unkompliziert und zuverlässig. Die Einstellung der Berechtigungen für remote Backups erfordert etwas mehr Know-How, was aber an den jeweiligen Zielsystemen liegt.
Für die Sicherung von kleineren Unternehmen oder SQL Server Express-Datenbanken auf jeden Fall ein interessantes Tool, welches bereits in der kostenlosen Variante eine Fülle von Funktionen bietet.

Hier noch mal der Link für den direkten Zugang zum kostenlosen Backup Tool SQL Backup Master