Jump to content

Wartungsplan: Berichtdateien werden nicht gelöscht


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo zusammen,

 

ich habe folgendes Problem:

 

Ich habe im SQL Server Managment Studio einen Wartungsplan eingerichtet (Typ Wartungscleanup) , der die Berichtdateien der anderen Wartungsjobs löschen soll, wenn diese älter als X Tage sind.

 

Die Einstellungen des Jobs sind:

 

Dateien folgenden Typs löschen: Texberichte für Wartungsplan

Ordner durchsuchen und Dateien anhand einer Dateiendung löschen:

Ordner: Z:\

Dateierweiterung: txt

Dateien anhang Ihres Alters zur Tasklaufzeit löschen:  Dateien löschen die älter sind als "1 Tag".

 

Der SQL Agent hat Änderungsrechte auf das Verzeichnis.

 

Der Job wird täglich ausgeführt hat, es werden aber keine Dateien gelöscht und der Job ohne Fehlermeldung beendet.

 

Jemand eine Idee, warum die Dateien nicht gelöscht werden?

 

Danke für Eure Hilfe schon mal.

 

Gruß

 

karkenau

Link zu diesem Kommentar

Moin,

 

der Ordner Z:\ ist ein ISCSI Ziel auf einer NAS.

 

Im Logfile steht folgendes:

 

Hilfsprogramm für die Microsoft® Serverwartung (Unicode), Version 11.0.3128
Der Bericht wurde auf xxxxx\xxxSQL' generiert.
Wartungsplan: Datensicherung (Berichtdateien) aufräumen
Dauer: 00:00:00
Status: Erfolgreich.
Details:
Task 'Wartungscleanup' (xxxxxxx\xxxSQL)
Wartungscleanup für Lokale Serververbindung
Cleanup für Wartungsplanbericht-Dateien ausführen
Alter: älter als 1 Tage
Taskbeginn: 2013-11-19T00:30:02.
Taskende: 2013-11-19T00:30:02.
Erfolg
Befehl:EXECUTE master.dbo.xp_delete_file 1,N''Z:\'',N''txt'',N''2013-11-18T00:30:02''

GO

 

Es handelt sich beim SQL Server um einen SQL Server 2012.

Link zu diesem Kommentar

Hm, das sieht zunächst mal nicht schlecht aus (zumal ja auch Status:Erfolgreich angegeben ist)

 

Der SQL Agent hat Änderungsrechte auf das Verzeichnis.

D.h. auch deine SQL-Dienste laufen entsp. unter eine Account welcher Rechte hat?

Welche Rechte haben aktuell die (Log-)Dateien, welche gelöscht werden sollen?

Liegen diese direkt unter Z:\ oder in einem Unterordner?

Steht evtl. noch was im Eventlog des Servers oder dem Systemlog der NAS noch etwas?

Link zu diesem Kommentar

Hallo,

 

ich habe dem SQLAgent Dienst Änderungsrechte auf dem Verzeichnis gegeben, in dem die Dateien liegen:

 

Hier ein Screenshot der Dateirechte:

 

vgxm2zxm.png

 

 

Und hier die Rechte auf dem Verzeichnis:

 

gxje9wu2.png

 

In den Ereignisprotokollen ist ansonsten nichts weiter zu finden.

 

Interessant ist vielleicht noch, das ich noch zwei weitere Jobs laufen habe, die die überflüssigen Transaktionsprotokolle (trn) und Datenbanksicherungen (bak) löschen. Dies funktioniert auch tadellos.

Link zu diesem Kommentar

ich habe dem SQLAgent Dienst Änderungsrechte auf dem Verzeichnis gegeben, in dem die Dateien liegen ....

Genau da wird evtl. der Hund begraben sein - siehe mein Hinweis aus #4 (Zitat: Liegen diese direkt unter Z:\ oder in einem Unterordner?).

 

Wenn du in deinem Wartungsplan direkt das Laufwerk Z:\ ansprichst (siehe Auszug #3 von dir), deine Logs aber in einem (direkten!) Unterordner liegen (z.B. Z:\Daten), musst du dazu den entsp. Haken im Wartungsplan anklicken.

Liegen die Logs evtl. ein einem weiteren Unterordner (Beispiel: Z:\Daten\Wartung\Logs), so wird der Job keine Daten mit der Endung *.txt löschen können, da er diese einfach nicht findet.

bearbeitet von Sanches
Link zu diesem Kommentar

Entschuldige bitte, entweder sehe ich hier etwas anderes oder wir reden einfach aneinander vorbei!

 

Leider sind die entsp. Daten mit schwarzen Balken verdeckt.

Dein erster Screenshot unter #5 (Dateirechte) zeigt einen Ordner an (Vermutung: "Z:\SAPSQL\Datensicherung (Berichtdateien)"  - siehe Fenstertitel)

Dein zweiter Screenshot unter #5 (Verzeichnisrechte) zeigt einen Unterordner an (Ich kann jetzt auch nur vermuten "Z:\SAPSQL").

Hingegen deinem Auszug aus dem Logfile (unter #3) bzw. dem Wartungsplan zeigt: ... EXECUTE master.dbo.xp_delete_file 1,N''Z:\'',N''txt'',N''2013-11-18T00:30 ... - also direkt im Laufwerk Z (ohne Unterordner)!

 

Demnach sucht der Wartungsplan direkt unter Z:\ nach den Dateien und (wenn meine Vermutungen richtig sein sollten) nicht in den Unterordnern wo die relevaten Daten evtl. liegen könnten.

 

Sollte ich jedoch mit meinen Vermutungen falsch liegen -> Sorry.

Link zu diesem Kommentar

Das kommt davon wenn man zu sehr darauf achtet nicht zu viele Daten preiszugeben, sorry.

 

Also der Pfad lautet tatsächlich Z:\SAPSQL

 

Und der passende Befehl dazu lautet:

 

Befehl:EXECUTE master.dbo.xp_delete_file 1,N''Z:\SAPSQL'',N''txt'',N''2013-11-18T08:26:55''

 

Sorry nochmal für die Verwirrung, wie gesagt, ich wollte nicht zu viel preisgeben.

Link zu diesem Kommentar

OK, aber bitte schon beim "nicht-zu-viele-Daten-preisgeben" zumindest bei irgendwelchen Text- oder Code-Blöcken (z.B. wie im EXECUTE Command) zumindest irgendwas eintragen (z.B. Z:\DATENXYZ) anstelle es ganz weg zu löschen - führt sonst auf eine falsche Fährte...

 

Da aber die beiden anderen Wartungspläne jedoch funktionieren (bak + trn), würde ich dir vorschlagen, den Wartungsplan für die Protokolle einfach nochmals neu zu erstellen.

Vielleicht wurde doch eine Kleinigkeit bei der Erstellung übersehen.

 

Anders kann ich es mir nicht erklären, der Rest sieht, m.M.n., in Ordnung aus.

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...