Online-Datensicherung SQL Server mit Script

Dieses Thema Online-Datensicherung SQL Server mit Script im Forum "Windows XP Forum" wurde erstellt von RavensMetaller, 12. Feb. 2005.

Thema: Online-Datensicherung SQL Server mit Script Hallo zusammen, Wer sich nen teuren Backupagent für SQL Server sparen will, kann auch gerne meine CMD-Datei...

  1. Hallo zusammen,

    Wer sich nen teuren Backupagent für SQL Server sparen will, kann auch gerne meine CMD-Datei ausprobieren:

    Code:
    @echo off
    rem
    rem Datensicherungsprozedur fuer die tse:nit Datenbank (SQL-Version 2000)
    rem mit Reorganisationsprozedur
    rem Version 1.5 (Windows 2000 Version)
    rem
    rem erstellt am 26.07.2001 von Sven Trautwein
    rem copyright (c) 2001 Sven Trautwein
    rem 
    rem erweitert am 15.10.2001 - Dienste werden vor dem backup restartet, damit der Speicher bereinigt wird
    rem erweitert am 09.04.2003 - Reorganisationsprozedur eingefügt
    rem
    rem angepasste Version für [KUNDENAME]
    rem 
    
    rem Bevor die Sicherung laeuft muessen im Enterprise Manager die Sicherungsmedien angepasst werden
    rem (Enterprise Manager - Verwaltung - Sicherung - neues Sicherungsmedium)
    rem
    rem folgende Sicherungsmedien werden benoetigt
    rem 
    rem master_dump
    rem db_10it_dump
    rem db_10it_log_dump
    rem db_10it_dump_reorg
    rem db_10it_log_dump_reorg
    rem
    
    rem Setzen der Variablen
    SET BACKUPDIR=C:\SQL_BACKUP
    SET SAPWD=
    
    if not exist %BACKUPDIR% md %BACKUPDIR%
    
    rem Neustart der Microsoft SQL Server-Dienste, damit Speicher bereinigt wird.
    net stop SQLSERVERAGENT
    net stop MSSQLSERVER
    net start MSSQLSERVER
    net start SQLSERVERAGENT
    
    rem überprüft, ob schon eine Sicherung der Datenbank existiert, wenn ja, wird diese umbenannt
    if exist %BACKUPDIR%\lock_1 move /y %BACKUPDIR%\db_10it_dump.dat %BACKUPDIR%\db_10it_dump.sik
    if exist %BACKUPDIR%\lock_2 move /y %BACKUPDIR%\master_dump.dat %BACKUPDIR%\master_dump.sik
    if exist %BACKUPDIR%\lock_3 move /y %BACKUPDIR%\db_10it_log_dump.dat %BACKUPDIR%\db_10it_log_dump.sik
    if exist %BACKUPDIR%\lock_11 move /y %BACKUPDIR%\db_10it_dump_reorg.dat %BACKUPDIR%\db_10it_dump_reorg.sik
    if exist %BACKUPDIR%\lock_33 move /y %BACKUPDIR%\db_10it_log_dump_reorg.dat %BACKUPDIR%\db_10it_log_dump_reorg.sik
    
    rem dumpen der 10_it Datenbank sowie der Master-Datenbank
    isql -Usa -P%SAPWD% -QDump Database db_10it to db_10it_dump with nounload, init, noskip
    isql -Usa -P%SAPWD% -QDump Database master to master_dump with nounload, init, noskip
    
    rem dumpen des Transaktionsprotokolls vor der Reorganisation
    isql -Usa -P%SAPWD% -Qsp_dboption db_10it,->trunc. log on chkpt.',false
    isql -Usa -P%SAPWD% -Qdump TRANSACTION db_10it to db_10it_log_dump with nounload, init, noskip
    isql -Usa -P%SAPWD% -Qsp_dboption db_10it,->trunc. log on chkpt.',true
    
    rem damit immer zwei Kopien der Datenbanken existieren, wird hier eine Lock-Datei erstellt
    if exist %BACKUPDIR%\db_10it_dump.dat echo db_10it_dump.dat > %BACKUPDIR%\lock_1
    if exist %BACKUPDIR%\master_dump.dat echo master_dump.dat > %BACKUPDIR%\lock_2
    if exist %BACKUPDIR%\db_10it_log_dump.dat echo db_10it_log_dump.dat > %BACKUPDIR%\lock_3
    
    rem Reorganisationsprozedur der Original-Datenbank
    isql -Usa -P%SAPWD% -Qsp_dboption db_10it,->read only',true
    isql -Usa -P%SAPWD% -Qsp_dboption db_10it,->single user',true
    isql -Usa -P%SAPWD% -QDBCC NewAlloc (db_10it)
    isql -Usa -P%SAPWD% -QDBCC CheckCatalog (db_10it)
    isql -Usa -P%SAPWD% -QDBCC CheckDB (db_10it)
    isql -Usa -P%SAPWD% -Qsp_dboption db_10it,->read only',false
    isql -Usa -P%SAPWD% -Qsp_dboption db_10it,->single user',false
    
    rem dumpen der reorganisierten 10_it Datenbank
    isql -Usa -P%SAPWD% -QDump Database db_10it to db_10it_dump_reorg with nounload, init, noskip
    
    rem dumpen des Transaktionsprotokolls nach der Reorganisation
    isql -Usa -P%SAPWD% -Qsp_dboption db_10it,->trunc. log on chkpt.',false
    isql -Usa -P%SAPWD% -Qdump TRANSACTION db_10it to db_10it_log_dump_reorg with nounload, init, noskip
    isql -Usa -P%SAPWD% -Qsp_dboption db_10it,->trunc. log on chkpt.',true
    
    rem damit immer zwei Kopien der reorganisierten Datenbanken existieren, wird hier eine Lock-Datei erstellt
    if exist %BACKUPDIR%\db_10it_dump_reorg.dat echo db_10it_dump_reorg.dat > %BACKUPDIR%\lock_11
    if exist %BACKUPDIR%\db_10it_log_dump_reorg.dat echo db_10it_log_dump_reorg.dat > %BACKUPDIR%\lock_33
    
    exit
    
    Ich denke das Script ist selbsterklärend und bietet genügend Sicherheit, da ständig mindestens zwei Datensätze vorgehalten werden. Natürlich erspart dieses Script NICHT die Sicherung auf Band oder CD, da die Backup's lokal auf dem Server liegen bleiben.
    Bitte die Variablen SAPWD, BACKUPDIR und natürlich die Namen der Datenbanken anpassen.

    Gruß
    Sven
     
Die Seite wird geladen...

Online-Datensicherung SQL Server mit Script - Ähnliche Themen

Forum Datum
Netzwerk/Internetverbindung zu Spieleserver Firewalls & Virenscanner 19. Sep. 2016
Gruppenrichtlinien Rechte für Taskleiste auf Server 2003 Windows Server-Systeme 27. März 2016
Zeitserver einrichten Windows Server 2012 Windows Server-Systeme 23. März 2016
Verbindungsproblem zu FTP- Server Webentwicklung, Hosting & Programmierung 11. Feb. 2016
Zeitsynchronisation von Windows 10 Pro und Windows Server 2012 Windows Server-Systeme 4. Feb. 2016