Home
Datenquellen
Controllflow
DataFlow
SSIS
ToC
Impressum
 

Bitte Aufräumen - die Wartungsplan Cleanup Tasks

Wenn Wartungsaufgaben beim SQL Server 2005 ausgeführt werden sollen, dann kann mit Hilfe des Wartungsplanassistenten ein Wartungsplan erstellt werden.

Aufruf des Wartungsplan Assistenten

Bei einigen Installationen kann es vorkommen, dass beim speichern des Wartungsplanes dieser Fehlerangezeigt wird.  Fehler beim Erzeugen eines Wartungsplans

In der Regel wird das Problem mit diesem SQL Befehlen behoben.

Für jeden Wartungsplan auf dem SQL Server 2005, wird ein SSIS Paket erstellt und in der MSDB des SQL Servers 2005 gespeichert. 

Falls Sie das Wartungspaket manuell bearbeiten wollen, müssen Sie es in ein Integration Services Projekt im BI Developer Studio importieren.

Wartungsplan im BIDS

Die Berichtstask für den Unterplan können Sie im BIDS nicht bearbeiten. Trotzdem funktioniert der Wartungsplan ohne Probleme. Ihre eigenen Ergänzungen platzieren Sie bitte in den Sequenz-Container Subplan_1.

Danach stehen Ihnen alle Möglichkeiten von SSIS zur Verfügung. Allerdings lassen sich so modifizierte Wartungspläne unter Umständen nicht mehr mit dem Wartungsplan Assistenten öffnen.

Der Administrator kann die Wartungspläne, entweder mit dem Assistenten erzeugen und oder im BIDS modifizieren, was eine wesentliche Arbeitsersparnis bedeutet.

Der Wartungsplanassistent und SSIS sind in der SQL Server 2005 Express Edition nicht vorhanden. Deshalb braucht aber auf diese Funktionalität nicht verzichtet werden. Hier finden Sie möglicherweise schon den entscheidenden Hinweis für die SQL Express Edition.

Neben der Task Datenbank sichern werden auch sehr häufig die Task Verlaufscleanup und Wartungscleanup verwendet.
Die Angabe vor mehr als einer Dateierweiterung ist nicht zulässig.
Damit diese Tasks im Assistenten zur Verfügung stehen, ist es erforderlich, dass das Service Pack 2 vom SQL Server 2005 eingespielt wurde. Das Services Pack 2 für den SQL Server 2005 kann hier heruntergeladen werden. Das entsprechende Readme finden Sie hier.

Leider ist im ursprünglichen Service Pack 2 ein schwerwiegender Fehler bei den Funktionen für die Wartungspläne enthalten. Es ist nicht möglich, durch die Buildnummer 9.00.3042 festzustellen, ob das Service Pack den Fehler enthält oder ob es sich um die korrigierte Version handelt. Die korrigierte Version wurde am 5. März 2007 veröffentlicht.

Deshalb sollte auf jeden Fall dieser
Hotfix eingespielt werden. Mit diesem Hotfix werden primär Probleme für die Wartungstasks im SSIS behoben. Ohne den Hotfix kann es unter Umständen möglich sein, dass die Cleanuptasks in SSIS oder Wartungsplan Ihre Backupdateien zu früh löschen.

Bitte aufräumen ...

Um alte Protokolle, die bei den Wartungsplänen angefallen sind, nach einer gewissen Zeit zu entsorgen, wird die Task Verlaufscleanup verwendet. Diese Task verwendet intern die beiden gespeicherten Prozeduren msdb.dbo.sp_purge_jobhistory und  msdb.dbo.sp_delete_backuphistory des SQL Servers 2005. Diese beiden gespeicherten Prozeduren sind offiziell dokumentiert.

Die Task Wartungscleanup kann verwendet werden, um Sicherungsdateien oder Textberichte von Wartungsplänen nach einer gewissen Zeit zu lösen.

Bei dieser Task tauchen immer wieder Fragen auf.

Die Task Wartungscleanup benötigt immer einen Verbindungsmanager vom Typ ADO.Net:SQL. Falls noch kein entsprechender Verbindungsmanager angelegt ist, kann der entsprechende Verbindungsmanager direkt aus der Task erstellen werden.

Die Task WartungsplanCleanup

Zum löschen von Dateien stehen zwei Optionen zur Verfügung:

  • Sicherungsdateien
    Hier wird als Standardvorgabe die Dateierweiterung bak vorgegeben. Diese Dateierweiterung kann aber beliebig überschrieben werden. Es ist möglich hier beliebige Dateierweiterungen anzugeben. Jokerzeichen "*" oder "?" sind auch erlaubt. Damit die Task funktioniert, darf nur die Dateierweiterung ohne führenden Punkt verwendet werden.

    Zusätzlich kann die Option Unterordner auf der obersten Ebene einschließen freigeschaltet werden.

    Wird diese Option ausgewählt, werden die entsprechenden Dateien in dem Verzeichnis und maximal eine Ebene tiefer gelöscht, die bei Ordner angegeben wurden. Verzeichnisse die nicht direkt unter dem Hauptordner liegen werden nicht mit verarbeitet. Das löschen durch einen ganzen Verzeichnisbaum wird also nicht unterstützt.
  • Textberichte für Wartungsplan
    Hier wird als Standardvorgabe die Dateierweiterung txt vorgegeben.
    Auch diese Dateierweiterung kann beliebig überschrieben werden. Damit die Task funktioniert, darf nur die Dateierweiterung ohne führenden Punkt verwendet werden.
    Die Option Unterordner auf oberster Ebene einschließen steht bei dieser Auswahl nicht zur Verfügung. Allerdings wird hier geprüft, ob die Textdateien tatsächlich aus dem Wartungsplan vom SQL Server stammen. Andere Dateien werden nicht gelöscht.

Zusätzlich wird in der Regel angegeben, dass Dateien nur dann gelöscht werden, wenn sie ein gewisses Alter überschritten haben.
Als Einheiten stehen hier Stunden, Tage, Wochen, Monate und Jahre zur Verfügung. Es ist auch möglich grundsätzlich alle entsprechenden Dateien ohne Altersbezug zu löschen. Es wird zwar eine Warnung angezeigt, aber die Task kann (auf Ihre Verantwortung) ausgeführt werden.

Wenn Sie mehr als einen Dateitypen (Dateierweiterung) löschen wollen, dann können auch die Jokerzeichen "?" und "*" in der Dateierweiterung verwenden.

Zusammenfassung

Die Verlaufs- und Wartungscleanup Task funktionieren erst seit dem Service Pack 2 des SQL Server 2005 richtig. Durch die geschickte Verwendung der jeweiligen Optionen steht dem "Frühjahrsputz" im Dateisystem nichts mehr im Wege.

Komponentenindex:

  • Wartungscleanup
  • Verlaufscleanup
  • Sequenzcontainer

erstellt am 31.5.2007