Backup-Prozess optimieren?
Hallo,
ich hab eine Frage, wie sich unser Backup-Prozess optimieren lässt?
Wir arbeiten derzeit mit einem Windows Server 2008 R2.
Auf diesem ist über die Aufgabenplanung folgendes definiert.
Täglich um 21:55 -> führe Batchdatei "stoppe_dienste.bat" --> wie der Name schon sagt werden hier in einer normalen Batch mit Hilfe von "sc" Dienste von Datenbanken und ähnlichem gestoppt.
Täglich 22:00 -> Windows-Sicherung mit dem Windowsinternen Sicherungstool wbadmin (ich nenn es mal das "neue ntbackup" ^^) --> dort sind als Sicherungselemente alle Festplatten, Systemstate, Bare-Metal usw ausgewählt -- gesichert wird auf Festplatte
Täglich 23:00 -> Batchdatei "starte_dienste.bat" --> startet die oben beendeten Dienste wieder
Täglich 23:00 -> mit Hilfe von einem Drittanbieter wird die Sicherungsdatei von Platte nun auf Tape geschrieben.
Täglich 6:00 -> Emailversand des Protokolls (Protkoll wird in jeder Batchdatei mit erstellt und auch von Sicherungstool benutzt)
Wie kann ich diesen Vorgang nun mit Abhänigkeiten versehen?
zb. möchte ich das die Sicherung anfängt, wenn alle dienste beendet sind. manchmal braucht ein Dienst länger zum beenden und die 5mins dazwischen reichen vielleicht nicht aus, dann soll die Sicherung natürlich erst danach starten. Desweiteren möchte ich aber auch nicht eine Stunde dazwischen Luft lassen, denn um so länger ist die Downtime der Dienste.
Oder er hängt sich an einer Stelle ganz auf dann braucht der Rest garnicht weiterlaufen.
Die Dienste sollten am besten wieder gestartet werden sobald die Windows-Sicherung abgeschlossen ist.
Genauso sollte die Email am besten versand werden, wenn die Speicherung auf Tape abgeschlossen ist.
Ohne unnötige Wartezeiten dazwischen einzukalkulieren, die im Problemfall wahrscheinlich eh nicht simmen.
Wie löse ich diese Anforderung am geschicktesten? Gibt es da eine sinnvolle Lösung über Batchscripte? Wie geht man an das Problem heran?
ich hab eine Frage, wie sich unser Backup-Prozess optimieren lässt?
Wir arbeiten derzeit mit einem Windows Server 2008 R2.
Auf diesem ist über die Aufgabenplanung folgendes definiert.
Täglich um 21:55 -> führe Batchdatei "stoppe_dienste.bat" --> wie der Name schon sagt werden hier in einer normalen Batch mit Hilfe von "sc" Dienste von Datenbanken und ähnlichem gestoppt.
Täglich 22:00 -> Windows-Sicherung mit dem Windowsinternen Sicherungstool wbadmin (ich nenn es mal das "neue ntbackup" ^^) --> dort sind als Sicherungselemente alle Festplatten, Systemstate, Bare-Metal usw ausgewählt -- gesichert wird auf Festplatte
Täglich 23:00 -> Batchdatei "starte_dienste.bat" --> startet die oben beendeten Dienste wieder
Täglich 23:00 -> mit Hilfe von einem Drittanbieter wird die Sicherungsdatei von Platte nun auf Tape geschrieben.
Täglich 6:00 -> Emailversand des Protokolls (Protkoll wird in jeder Batchdatei mit erstellt und auch von Sicherungstool benutzt)
Wie kann ich diesen Vorgang nun mit Abhänigkeiten versehen?
zb. möchte ich das die Sicherung anfängt, wenn alle dienste beendet sind. manchmal braucht ein Dienst länger zum beenden und die 5mins dazwischen reichen vielleicht nicht aus, dann soll die Sicherung natürlich erst danach starten. Desweiteren möchte ich aber auch nicht eine Stunde dazwischen Luft lassen, denn um so länger ist die Downtime der Dienste.
Oder er hängt sich an einer Stelle ganz auf dann braucht der Rest garnicht weiterlaufen.
Die Dienste sollten am besten wieder gestartet werden sobald die Windows-Sicherung abgeschlossen ist.
Genauso sollte die Email am besten versand werden, wenn die Speicherung auf Tape abgeschlossen ist.
Ohne unnötige Wartezeiten dazwischen einzukalkulieren, die im Problemfall wahrscheinlich eh nicht simmen.
Wie löse ich diese Anforderung am geschicktesten? Gibt es da eine sinnvolle Lösung über Batchscripte? Wie geht man an das Problem heran?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 171972
Url: https://administrator.de/contentid/171972
Ausgedruckt am: 25.11.2024 um 15:11 Uhr
5 Kommentare
Neuester Kommentar
Morgen,
Warum nutzt ihr keines, welches in der Lage ist, die Datenbanken online und eventuell mit VSS zu sichern?
Sicherungssoftware, die zu den kompletten Anforderungen eurer Umgebung passt.
Das könnte bspw. Backup Exec sein, welches mittels Agenten sehr viele Datenbanken und Systeme zuverlässig sichern kann.
Wenn dann doch noch ein exotisches Programm darunter ist, welches nicht direkt gesichert werden kann, bietet BE die Funktion eigene Scripte vor/nach der Sicherung laufen zu lassen.
Dort kann man sehr schön einstellen, dass erst mit der Sicherung fortgefahren wird, wenn das Script Erfolg gemeldet hat.
ich hab eine Frage, wie sich unser Backup-Prozess optimieren lässt?
Täglich 23:00 -> mit Hilfe von einem Drittanbieter wird die Sicherungsdatei von Platte nun auf Tape geschrieben.
Was ist das für ein Drittanbietertool?Warum nutzt ihr keines, welches in der Lage ist, die Datenbanken online und eventuell mit VSS zu sichern?
Wie löse ich diese Anforderung am geschicktesten? Gibt es da eine sinnvolle Lösung über Batchscripte? Wie geht man an das Problem heran?
Mein Vorschlag:Sicherungssoftware, die zu den kompletten Anforderungen eurer Umgebung passt.
Das könnte bspw. Backup Exec sein, welches mittels Agenten sehr viele Datenbanken und Systeme zuverlässig sichern kann.
Wenn dann doch noch ein exotisches Programm darunter ist, welches nicht direkt gesichert werden kann, bietet BE die Funktion eigene Scripte vor/nach der Sicherung laufen zu lassen.
Dort kann man sehr schön einstellen, dass erst mit der Sicherung fortgefahren wird, wenn das Script Erfolg gemeldet hat.
Zitat von @TheBesth:
> Was ist das für ein Drittanbietertool?
Das Tool ist irrelevant. Es sichert einfach nur Daten von HDD auf Tape. (darf man hier Werbung machen?)
Wieso solltest du das Tool nicht nennen dürfen?> Was ist das für ein Drittanbietertool?
Das Tool ist irrelevant. Es sichert einfach nur Daten von HDD auf Tape. (darf man hier Werbung machen?)
> Warum nutzt ihr keines, welches in der Lage ist, die Datenbanken online und eventuell mit VSS zu sichern?
Ich bin der Ansicht 100%ige Datenkonsistenz erreicht man nur durch abschalten - von Online-Agents bin ich nicht so begeistert.
Das ist - IMHO - grober Unsinn.Ich bin der Ansicht 100%ige Datenkonsistenz erreicht man nur durch abschalten - von Online-Agents bin ich nicht so begeistert.
Wenn du jedoch so denkst, dann müsstest du konsequenter Weise deine Windows-Server vor jeder Sicherung herunterfahren und Offline-Sicherungen/Images erzeugen.
Ich möchte gerne ein Backup-to-Disk-to-Tape realisieren Aus dem einfachen Grund, dass die Downtime möglichst gering
ist.
Welche Downtime, die der Datenbanken?ist.
Bei Onlinesicherung gibt es überhaupt keine Downtime?
Darüber hinaus gibt es zwingende Gründe für Onlinesicherungen bei verschiedenen Datenbank-Anwendungen.
Wenn du bspw. den Exchange-Server nie online sicherst, werden die Logs deine Festplatte volllaufen lassen.
Von welchen Datenbanken reden wir hier eigentlich (SQL/Oracle, Exchange, etc)?
Hi TheBesth,
klar ist das eine Grundsatzdiskussion, aber das kann manchmal zu Lösungen führen, die man so überhaupt nicht gesehen hätte.
Bei MS-SQL-Datenbanken wäre eine Online-Sicherung (oder auch ein kompletter Wartungsplan) auf jeden Fall zu empfehlen.
Bei einer Wartung können auch Datenbanküberprüfungen und andere sinnvolle Aktionen durchgeführt werden.
Auf die Schnelle habe ich mal folgenden Link für dich rausgesucht.
Wenn ihr die SQL-Server-Datenbanken nicht im Wiederherstellungsmodell simple laufen habt, müsst ihr sogar zwangsweise Onlinesicherungen machen. Auch hier würde das Problem mit den volllaufenden Festplatten auftreten.
Hier ist mal eine Auflistung der verschiedenen Wiederherstellungs-Modi beim SQL-Server.
Natürlich kann man diese Sicherungen/Wartungspläne auch separat mit dem SQL-Server Management-Studio durchführen, doch wenn das automatisch von der Sicherungssoftware gemacht wird, hat man eine Sache weniger, die eventuell einer anderen (der Sicherung durch die Software) in die Quere kommen könnte.
Auch 'normale Dateien' können gesperrt sein (während der Sicherung eventuell durch einen User in Benutzung). Wenn du dann eine Lösung einsetzt, die damit umgehen kann, ersparst du dir viele Fehlermeldungen im Sicherungsprotokoll.
Allerdings glaube ich, dass das mit wbadmin schon klappen sollte.
Zu deiner Eingangsfrage:
Auch wenn man - wie ich - vorwiegend mit Backup Exec sichert, muss man gelegentlich Datenbanken dafür anhalten.
Bestes Beispiel hierfür sind die DATEV-Datenbanken, die nicht über den normalen MSSQL-Server-Agenten oder darauf basierende Sicherungslösungen online gesichert werden können.
Für diese muss man auch die Stopp-/Start-Scripte einrichten.
Genau jetzt kommt dein Problem mit der Zeit des Dienst-Shutdowns ins Spiel.
In einer BE-Sicherung kann man festlegen, dass die Sicherung erst starten soll, wenn das Script durchgelaufen ist und die Rückmeldung gegeben hat.
Da ich mich mit wbadmin zu wenig auskenne, kann ich dir nicht sagen, ob es eine Möglichkeit gibt, diese Rückmeldung deines Scripts einzubinden.
Ich würde hier ein ausreichendes Zeitfenster einbauen.
klar ist das eine Grundsatzdiskussion, aber das kann manchmal zu Lösungen führen, die man so überhaupt nicht gesehen hätte.
Wir reden von MS-SQL, MySQL, Lotus Domino, C-SIDE und dbase Datenbanken. Diese muss ich alle sichern.
Zu Lotus Domino und C-SIDE kann ich mich nicht äußern, da ich davon keine Ahnung habe.Bei MS-SQL-Datenbanken wäre eine Online-Sicherung (oder auch ein kompletter Wartungsplan) auf jeden Fall zu empfehlen.
Bei einer Wartung können auch Datenbanküberprüfungen und andere sinnvolle Aktionen durchgeführt werden.
Auf die Schnelle habe ich mal folgenden Link für dich rausgesucht.
Wenn ihr die SQL-Server-Datenbanken nicht im Wiederherstellungsmodell simple laufen habt, müsst ihr sogar zwangsweise Onlinesicherungen machen. Auch hier würde das Problem mit den volllaufenden Festplatten auftreten.
Hier ist mal eine Auflistung der verschiedenen Wiederherstellungs-Modi beim SQL-Server.
Natürlich kann man diese Sicherungen/Wartungspläne auch separat mit dem SQL-Server Management-Studio durchführen, doch wenn das automatisch von der Sicherungssoftware gemacht wird, hat man eine Sache weniger, die eventuell einer anderen (der Sicherung durch die Software) in die Quere kommen könnte.
Desweiteren noch normale Dateien, aber diese sind natürlich unkritisch auf eventuelle Zugriffs-Probleme
Das ist so nicht korrekt.Auch 'normale Dateien' können gesperrt sein (während der Sicherung eventuell durch einen User in Benutzung). Wenn du dann eine Lösung einsetzt, die damit umgehen kann, ersparst du dir viele Fehlermeldungen im Sicherungsprotokoll.
Allerdings glaube ich, dass das mit wbadmin schon klappen sollte.
Zu deiner Eingangsfrage:
Auch wenn man - wie ich - vorwiegend mit Backup Exec sichert, muss man gelegentlich Datenbanken dafür anhalten.
Bestes Beispiel hierfür sind die DATEV-Datenbanken, die nicht über den normalen MSSQL-Server-Agenten oder darauf basierende Sicherungslösungen online gesichert werden können.
Für diese muss man auch die Stopp-/Start-Scripte einrichten.
Genau jetzt kommt dein Problem mit der Zeit des Dienst-Shutdowns ins Spiel.
In einer BE-Sicherung kann man festlegen, dass die Sicherung erst starten soll, wenn das Script durchgelaufen ist und die Rückmeldung gegeben hat.
Da ich mich mit wbadmin zu wenig auskenne, kann ich dir nicht sagen, ob es eine Möglichkeit gibt, diese Rückmeldung deines Scripts einzubinden.
Ich würde hier ein ausreichendes Zeitfenster einbauen.