Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Batch: Entfernung von älteren Versionen nach "Kopie" (https://www.delphipraxis.net/206410-batch-entfernung-von-aelteren-versionen-nach-kopie.html)

haentschman 18. Dez 2020 05:50


Batch: Entfernung von älteren Versionen nach "Kopie"
 
Hallöle...8-)

Ich bräuchte mal Hilfe zu einem Batch Problem. Ich habe es nicht so mit der Konsole. :oops:

Ich habe eine Batch, die täglich über die Aufgabenplanung aufgerufen wird und die Datenbanken sichert. Schick...:wink:
Jetzt hätte ich gern, daß mit dem Aufruf nach der Sicherung die Sicherungen nur für X Tage erhalten bleiben. Die anderen könnten gelöscht werden.

Dateinamensformat:
20201218_000100_Database_FULL.BAK
Variable: 30 Tage

Batch:
Zitat:

sqlcmd -U xx -P xxxx -S .\Blubb -Q "EXEC sp_BackupDatabases @backupLocation='D:\MSSQL\MSSQL11.MSSQLSERVER\MSSQ L\Backup\', @backupType='F'"
In Delphi:
1. Schleife über alle Files
2. Prüfung der ersten 8 Zeichen (Datum)
3. Entfernung wenn zu alt

Kann mir jemand helfen? :kiss:

TigerLilly 18. Dez 2020 07:56

AW: Batch: Entfernung von älteren Versionen nach "Kopie"
 
Das kannst du eigentlich auch nur mit den Bordmitteln des SQL Backups machen:

https://docs.microsoft.com/en-us/sql...#TsqlProcedure

https://docs.microsoft.com/en-us/sql...l-server-ver15

Sonst hilft dir auch sicher dieses:
https://stackoverflow.com/questions/...-cmd-scripting
https://ss64.com/nt/syntax-datemath.html

punktl 18. Dez 2020 10:23

AW: Batch: Entfernung von älteren Versionen nach "Kopie"
 
Schau Dir die Hilfe zu robocopy an.
Verschiebe zunächst alle Dateien, die das gewünschte Alter haben nach z.B. /TEMP und lösche sie anschließend.

Code:
robocopy /MOV /MINAGE:30 <Quelle> <Ziel>
Falls die Dateien noch von anderen Programmen im Zugriff sein können, sind die Parameter /R und /W (Wiederholungen und Wartezeit) ggf. einzusetzen.

hth
Peter

Aviator 18. Dez 2020 10:57

AW: Batch: Entfernung von älteren Versionen nach "Kopie"
 
Oder alternativ direkt auf die richtige Lösung übergehen und die Sicherungsskripte von Ola Hallengreen benutzen.

Da kannst du alles einstellen was du willst.


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:51 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz