8
0
2024-01-24 16:42:38 +01:00

62 lines
2.2 KiB
Batchfile

@ECHO OFF
TITLE DIGITAL DATA - SQL-Sicherungstask
ECHO Stapelverarbeitungsprogramm
ECHO SQL-Sicherungstask
ECHO -
ECHO Digital Data
ECHO Ludwig-Rinn-Strasse 16
ECHO 35452 Heuchelheim
ECHO Tel.: 0641 / 202360
ECHO E-Mail: info@didalog.de
ECHO -
ECHO Version 1.1
ECHO Letzte Aktualisierung: 14.01.2014
ECHO -
ECHO Programmstart am %date% um %time:~0,8% auf %computername%.
REM --------------------------------------------------------------
REM Definition der Variablen.
SET Server=localhost
SET temppfad=E:\DB\Microsoft SQL Server 2008 R2\MSSQL10_50.MSSQLSERVER\MSSQL\Backup
SET finalerpfad=\\APPEL-NAS02\appel\Sicherung\appel-DB01\SQL-Datenbanken
SET SicherungsLaufwerk=S:
SET LaufwerkBenutzer=domain\Username
SET LaufwerkPasswort=aPassword
SET Aufbewahrungszeit=14
REM --------------------------------------------------------------
ECHO -
ECHO Beginne Laufwerksmapping (CMD Befehl forfiles arbeitet nicht mit UNC Pfaden).
IF EXIST %SicherungsLaufwerk% (net use %SicherungsLaufwerk% /delete /yes)
net use %SicherungsLaufwerk% %finalerpfad% %LaufwerkPasswort% /user:%LaufwerkBenutzer%
ECHO -
ECHO Entferne Log-Dateien die aelter sind als %Aufbewahrungszeit% aus Pfad: %temppfad%.
C:\Windows\System32\forfiles /P "%temppfad%" /M *.log /C "cmd /c if @isdir==FALSE del @file" /D -%Aufbewahrungszeit%
ECHO -
ECHO Erstelle Datenbank Sicherung in temporären Pfad: %temppfad%.
SQLCMD -E -S %Server% -i "%temppfad%\SQL-Sicherungstask.SQL" -o "%temppfad%\SQL-Sicherungstask_Schritt_2_von_2_%date:~-10,2%%date:~-7,2%%date:~-4,4%_%time:~-11,2%%time:~-8,2%%time:~-5,2%%time:~-2,2%.log"
ECHO -
ECHO Kopiere Datenbank Sicherung in finalen Pfad (Von %temppfad% nach %finalerpfad% )
copy "%temppfad%\*.bak" %finalerpfad%
ECHO -
ECHO Entferne Datenbank Sicherung aus temporären Pfad: %temppfad%.
del "%temppfad%\*.bak"
ECHO -
ECHO Entferne Backup-Dateien die aelter sind als %Aufbewahrungszeit% Tage aus %finalerpfad%.
C:\Windows\System32\forfiles /P %SicherungsLaufwerk% /M *.bak /C "cmd /c if @isdir==FALSE del @file" /D -%Aufbewahrungszeit%
ECHO -
ECHO Laufwerksmapping wird wieder entfernt.
net use %SicherungsLaufwerk% /delete /yes
ECHO -
ECHO Alle Aufgaben wurden abgeschlossen. Beende Programm.
exit