Auf einem Windows Server kommt es des öfteren vor, das man zum Beispiel für eine Datensicherung regelmäßig die Daten einer MSSQL Datenbank exportieren muss. Nach einer Weile würde das Verzeichnis relativ groß werden. Ich zeige hier, wie man alte Daten einfach löscht.

Datenexport

Die Aufgabenstellung war, die MSSQL Daten täglich für eine Datensicherung zu exportieren. Dafür habe ich mir eine BAT Datei geschrieben, die das erledigt. Dabei wird immer das Aktuelle Datum und die Uhrzeit an den Dateinamen gehangen. Das Skript wird dann regelmäßig um 6:00 Uhr vom Taskplaner ausgeführt.

Die SQL Sicherungsdatei ist in meinem Fall immer so um die 150MB groß. Das heißt, das das Sicherungsverzeichniss schnell sehr groß wird. Zu alte Daten werden nicht mehr benötigt. Als muss eine Lösung her, das nicht immer alte Daten von Hand gelöscht werden müssen. Von hause aus kann der Windows Server keine Daten löschen, die älter als x Tage sind.

Lösung des Problems mit Boardmitteln vom SBS

Über einen Umweg geht dies doch. Dafür nutze ich das Komandozeilentool Robocopy. Damit kann man die verschiedensten Kopier-Szenarien erstellen. Und eben auch das verschieben von Dateien oder Verzeichnissen, die älter alx x Tage sind.

Dafür habe ich mir eine BAT Datei gebastelt, die als erstes per Kommandozeile ein neues Verzeichnis „muell“ anlegt. Dorthinein verschiebe ich dann per Robocopy alle Dateien die älter als 60 Tage sind. Anschließend lösche ich das Verzeichnis „muell“ weider per Befehl.

Das Skript wird bei mir per Taskplaner 1mal in der Woche irgendwann in der Nacht aufgerufen. Und alles funktioniert einwandfrei. Der Server müllt sich nicht mehr zu.

Pin It on Pinterest

Share This