Tutorial: Sicherungsscripte für eine MOS’aik-SQL-Installation

Ab sofort bloggen wir mittwochs zu Themen aus der Technik. Freuen Sie sich auf Tipps oder auf Produktvorstellung aus der IT-Branche.

Um eine MOS’aik SQL Installation auf dem SQL Server via. Script zu sichern sind im wesentlichen zwei Script’s notwendig.

  1. Ein SQL Script welches die MOS’aik Datenbank in eine *.bak Datei auf der lokalen Festplatte sichert.
  2. Ein cmd Script welches die SQL Backupdatei und alle zusätzlichen MOS’aik Dateien an einen anderen Ort, wie z.B. auf eine USB Festplatte kopiert.

Als erstes hier ein Beispiel SQL Script „backup_sql_db.sql“ zur automatischen Datensicherung einer Datenbank mit dem Namen „Mosaik“. Dieses legen wir unter C:\Mosaik\ ab:

  • BACKUP DATABASE [MOSAIK] TO DISK = N’C:\Backup\Mosaik.bak‘ WITH NOFORMAT, INIT, NAME = N’Mosaik-Vollständig Datenbank Sichern‘, SKIP, NOREWIND, NOUNLOAD, STATS = 10
    GO
    declare @backupSetId as int
    select @backupSetId = position from msdb..backupset where database_name=N’MOSAIK‘ and backup_set_id=(select max(backup_set_id) from msdb..backupset where database_name=N’MOSAIK‘ )
    if @backupSetId is null begin raiserror(N’Fehler beim Überprüfen. Sicherungsinformationen für die Mosaik-Datenbank wurden nicht gefunden.‘, 16, 1) end RESTORE VERIFYONLY FROM DISK = N’C:\Backup\Mosaik.bak‘ WITH FILE = @backupSetId, NOUNLOAD, NORDWIND
    GO

Im zweiten Script „backup_mosaik.cmd“ führen wir als erstes das zuvor angelegte SQL Script mit Hilfe der SQL Command Shell „SQLCMD“ aus. Dann kopieren wir alle wichtigen MOS’aik Bewegungsdaten inkl. des erstellen SQL Backups auf ein USB Laufwerk mit dem Namen „F:“. MOS’aik ist in diesem Beispiel unter C:\Mosaik\ abgelegt. Der SQL Server trägt den Namen „SQLSERVER“:

  • @echo off
    sqlcmd -E -S SQLSERVER -i C:\Mosaik\backup_sql_db.sql
    xcopy C:\Mosaik\*.mdb F:\ /y
    xcopy C:\Mosaik\*.mdw F:\ /y
    xcopy C:\Mosaik\Archivordner\*.* F:\Archivordner\ /e /r /y
    xcopy „C:\Mosaik\MOS’aik-Vorlagen\*.*“ „F:\MOS’aik-Vorlagen\“ /e /r /y

Dieses Script kann natürlich auch mit dem Windows Aufgabenplaner automatisiert gestartet werden.