
Ich habe ein einfaches Integration Service-Paket, das eines SQL Task
wie unten gezeigt enthält;
WLSTAGE Bakup using Red Gate
: Aufrufemaster..sqlbackup
zur Backup-Datenbank
Hier ist das SQL zum Ausführen der eigentlichen Sicherung
exec master..sqlbackup '-E -SQL "BACKUP DATABASE [WLSTAGE] TO DISK = ''\\Backups\<AUTO>'' WITH COMPRESSION = 1, INIT, MAILTO = ''<left blank intentionally>'', VERIFY"'
Da ich den Namen der Sicherungsdatei wie folgt angegeben habe <AUTO>
:Ich frage mich, ob es eine einfache Möglichkeit gibt, Backups zu entfernen, die älter als 2 Tage sind(wenn möglich, ohne dass zum Parsen des Dateinamens Plumbing-Code geschrieben werden muss).
Antwort1
Ich bin nicht sicher, was die AUTO-Anweisung bewirkt, aber Sie kennen wahrscheinlich die Wartungsbereinigungsaufgabe. Tut sie nicht, was Sie brauchen?
Ich mag Powershell auch für solche Dinge.
(get-item -path "d:\perflogs\*" | where {$_.creationTime -lt ((get-date) - (new-timespan -days 30))} | where {$_.extension -eq ".blg"}) | remove-item