
Tengo un paquete de servicio de integración simple que tiene uno SQL Task
como se muestra a continuación;
WLSTAGE Bakup using Red Gate
: Llamadasmaster..sqlbackup
a la base de datos de respaldo
Aquí está el SQL para ejecutar la copia de seguridad real.
exec master..sqlbackup '-E -SQL "BACKUP DATABASE [WLSTAGE] TO DISK = ''\\Backups\<AUTO>'' WITH COMPRESSION = 1, INIT, MAILTO = ''<left blank intentionally>'', VERIFY"'
Como he especificado el nombre del archivo de copia de seguridad como <AUTO>
,Me pregunto si existe una forma sencilla de eliminar copias de seguridad de más de 2 días.(si es posible, sin tener que escribir ningún código de plomería para analizar el nombre del archivo).
Respuesta1
No estoy seguro de qué hace la declaración AUTO, pero probablemente conozca la tarea de limpieza de mantenimiento. ¿No hace lo que necesitas?
También me gusta powershell para cosas como esta.
(get-item -path "d:\perflogs\*" | where {$_.creationTime -lt ((get-date) - (new-timespan -days 30))} | where {$_.extension -eq ".blg"}) | remove-item