Forum
Tipps
News
Menu-Icon

Eigenes Batchskript für Datensicherung

Hey,

Hab ein Batchskript geschrieben für eine Datensicherung. Es läuft die ganze Zeit im Hintergrund und scannt die Verbindung zu einem Server im LAN. Darauf läuft ein Webserver (Apache2.2) und Datenbankserver (MySQL 5). Wenn nun die Verbindung nicht mehr verfügbar ist, wird auf meinem PC automatisch der Apache + MySQL gestartet.

Zudem werden immer aktuellste Dateien abgeglichen.

Soll sozusagen ein redundantes System sein.

Funzt soweit auch ganz gut, nur wenn er abgleicht bleibt das Skript jedes mal 7 Sekunden stehen.

Was könnte das sein? Überprüft er jede einzelne Datei auf aktuellstes Datum?

Ich weiß auch, dass es einige Tools gibt, die eine Datensicherung machen können, aber ich wollte mein eigenes schreiben.

Hier das Skript:

 

Zitat
@echo off

:serverstartwatch

title Ueberwachung des Servers: %ip% - server01

set ip=192.168.178.55
set sicherung1=C:\server
set sicherung2=%USERPROFILE%\Eigene Dateien\user
IF NOT EXIST %sicherung1% echo %sicherung1% wurde nicht gefunden!


echo Ueberpreufen, ob Netzlaufwerk zu Server %ip% steht...

IF NOT EXIST z: net use Z: \\%ip%\d$

IF NOT errorlevel 1 (goto serverping) else (goto serverwait)

:serverping
color 02
title Ueberwachung des Servers: %ip% - %time% - %date%

echo.
echo.
echo ################ Scanne server01 - %ip% - %time% ################
echo.
echo.
ping %ip% -n 2

IF NOT errorlevel 1 (goto serveronline) else (goto serverwait)

:serveronline
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo Stoppe Webserver: Apache2.2

NET START | FIND "Apache2.2"

IF NOT ERRORLEVEL  1 (net stop Apache2.2) else (echo Der Apache Webserver laeuft nicht!)
echo.
echo.
echo Stoppe Datenbankserver: MYSQL

NET START | FIND "MySQL"

IF NOT ERRORLEVEL  1 (net stop MYSQL) else (echo Der MYSQL Datenbankserver laeuft nicht!)
echo.
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo Versuche aktuellste Dateien von %sicherung1% auf %ip% zu kopieren!
echo.
xcopy "%sicherung1%" "Z:\Backup\user\server" /D /F /E /O /X /Y /R
echo.
IF NOT errorlevel 1 (echo Kopieren abgeschlossen...) else (echo Es wurde nichts kopiert...)
echo.
echo.
echo Versuche aktuellste Dateien von %sicherung2% auf %ip% zu kopieren!
echo.
xcopy "%sicherung2%" "Z:\Backup\userEigene_Dateien\user" /D /F /E /O /X /Y /R
echo.
IF NOT errorlevel 1 (echo Kopieren abgeschlossen...) else (echo Es wurde nichts kopiert...)
echo.
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!
echo.
echo %date% - %time% - Server %ip% online!

goto serverping


:serverwait
color 06
title Ueberwachung des Servers: %ip% - %time% - %date%
echo.
echo %date% - %time% - Warte auf reconnect von %ip%...
echo.
echo %date% - %time% - Warte auf reconnect von %ip%...
echo.
echo %date% - %time% - Warte auf reconnect von %ip%...
echo.
echo %date% - %time% - Warte auf reconnect von %ip%...
echo.
echo %date% - %time% - Warte auf reconnect von %ip%...
echo.
echo %date% - %time% - Warte auf reconnect von %ip%...
echo.
echo %date% - %time% - Warte auf reconnect von %ip%...
echo.
echo %date% - %time% - Warte auf reconnect von %ip%...
echo.
echo %date% - %time% - Warte auf reconnect von %ip%...
echo.
echo %date% - %time% - Warte auf reconnect von %ip%...
echo.
echo %date% - %time% - Warte auf reconnect von %ip%...
echo.
echo %date% - %time% - Warte auf reconnect von %ip%...
echo.
echo %date% - %time% - Warte auf reconnect von %ip%...
echo.
echo %date% - %time% - Warte auf reconnect von %ip%... >>"C:\server01-ueberwachung.log"

ping %ip% -n 3


IF NOT errorlevel 1 (goto serverping) else (goto serverdown)



:serverdown

color 04
title Ueberwachung des Servers: %ip% - %time% - %date%

echo Warte auf Verbindung zu Server %ip%
echo.
ping %ip% -n 2

IF NOT errorlevel 1 (goto serverstartwatch) else (goto serveroffline)
echo.
:serveroffline
echo.
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo Starte Webserver: Apache2.2

NET START | FIND "Apache2.2"

if ERRORLEVEL = 1 (
net start Apache2.2
) else (
echo Der Apache Webserver laeuft!
echo.
)
echo.
echo.
echo Starte Datenbankserver: MYSQL

NET START | FIND "MySQL"

if ERRORLEVEL = 1 (
net start MySQL
) else (
echo Der MySQL Datenbankserver laeuft!
echo.


echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server! >>"C:\server01-ueberwachung.log"
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!
echo %date% - %time% - Keine Verbindung zu Server!

goto serverdown

greeZ    
« Letzte Änderung: 10.04.11, 02:25:02 von Benni17 »


Antworten zu Eigenes Batchskript für Datensicherung:

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

schonmal blick auf robocopy geworfen?

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Ja habs mal angeguckt. Wollt aber eigenes Skript schreiben + verwenden. (Will oft immer was selbst machen und nix fertiges nehmen :D)

Ich denke es dauert diese 7 Sekunden, weil das Skript den Zeitstempel von jeder Datei abgleicht. Zudem läufts über Netzwerk. Er cached die Dateien, schaut sie durch und macht weiter, wenn sich nix verändert hat.

Is zwar nich so schlimm, aber mal gucken ob ich ne Lösung find es zu beschleunigen..


greeZ


« Tastatur am Laptop verstellt und NUM-Taste schon probiert. HiiilllfeWindows 7: Welches Programm liest alle Tonspuren aus einer Audio-Datei? »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!

Fremdwörter? Erklärungen im Lexikon!
Zugriffszeit
In Milisekunden angegebene Zeit, die das Speichermedium zum Erreichen der gesuchten Daten braucht. Die Zeit ist abhängig vom technischen Verfahren des Mediums sowie ...

Reaktionszeit
In der Elektronik versteht man unter der Reaktionszeit die Zeit, die ein Flachbildschirm benötigt, um die Farbe und die Helligkeit eines Bildpunktes zu ändern. ...

Application Server
Ein Application Server, zu deutsch Anwedungsserver, ist ein Netzwerkrechner (Server) auf dem verschiedenste Anwendungsprogramme ausgeführt werden können. Der Be...