Arbeiten parallel zum Backup

Thomas Berger ThB at Gymel.com
Mo Jan 17 11:22:32 CET 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Lieber Herr Rall, liebe Liste,

| von den Katalogdaten wird täglich in einem bestimmten Zeitraum
| automatisch ein Backup gemacht. Von Dateien, von denen beim ersten
| Versuch kein Backup erstellt werden konnte, wird zu einem späteren
| Zeitpunkt erneut versucht ein Backup zu erstellen. Parallel dazu wird
| momentan mit Allegro gearbeitet. Kann es durch diesen gleichzeitigen
| Prozess zu Problemen kommen? Sollte ich vor dem Backup die Datenbank

erstens ja und zweitens ist dieses Backup sowieso wertlos:
Die Dateien der Datenbank sind ja zu unterschiedlichen
Zeitpunkten gesichert worden und daher ist der gesicherte
Zustand nicht konsistent.


| sperren und somit die Arbeiten mit Allegro unterbinden? Ließe sich
| die Datenbank vor Beginn des automatischen Backups per Batchdatei
| automatisch sperren und nach Abschluss des Backups wieder freigeben?

Das genuegt nicht unbedingt.

Backup-Programme gehen ziemlich ruppig mit den zu sichernden
Dateien um, typischerweise sperren sie sie auf Betriebssystemebene
komplett, jedes Programm, was waehrend dieser Sperre zu schreiben
versucht, erlebt Schreibfehler. allegro reagiert auf solche
Fehler uneinheitlich, Indexeintraege etwa werden stillschweigend
nicht geschrieben, Schreibprobleme in die .LOG-Datei hingegen
fuehren nach meiner Erinnerung zum Absturz.

Umgekehrt kann das Backup-Programm typischerweise die Dateien
nicht sperren, wenn sie im Schreibzugriff sind, das ist bei
der Bearbeitung unter PRESTO und a99 u.U. auch dann der Fall, wenn
die Datenbank gesperrt ist (die Programme duerfen schreiben,
"wollen" aber nicht). Auch die "Totalsperre" hilft nicht unbedingt,
weil sie nur das starten neuer Clients unterbindet, bereits arbeitende
werden nicht "herausgeworfen".

Backups (und Virenscans, das ist technisch aehnlich) koennen eigentlich
nur dann "sicher" ausgefuehrt werden, wenn Sie (zusaetzlich zur
Datenbanksperre) mit nicht-allegro-Mitteln sichergestellt haben,
dass kein Arbeitsplatz mit Schreibberechtigung auf die Datenbank
zugreift.

Fuer sehr kleine Datenbanken ist das alles ziemlich unerheblich,
weil das Betriebssystem bei nicht moeglichen Schreibzugriffen einige
Sekunden Toleranz erlaubt. Weil Sie aber Neuversuche der Backup-
Software erleben, scheint die Datenbank etwas groesser zu sein.
Eine guenstige Strategie in solchen Faellen ist uebrigens, die
Datenbank nicht direkt zu sichern, sondern per Zeitsteuerung (bzw.
im Rahmen der Backup-Software lassen sich solche Aktionen meist
auch konfigurieren) eine .BAT-Datei zu aktivieren, die die
Datenbank zunaechst einmal auf ein anderes Verzeichnis desselben
Servers *kopiert*. Das ist meist deutlich schneller als die
direkte Bandsicherung (kann aber bei sehr grossen Datenbanken im
Mehr-Gigabyte-Bereich auch in die Groessenordnung von 30 Minuten
geraten).

Neuere Microsoft-Betriebssysteme (etwa benutzt beim Backup unter
Windows XP) kennen das Konzept der "Volume-Schattenkopie", darueber
weiss ich nicht viel, ich stelle mir das aber so vor, dass ab dem
Zeitpunkt X jede Datei, in die geschrieben werden soll, "geklont"
wird. Backup-Programme, die diesen Mechanismus nutzen, sollten
eigentlich in jeder Situation sauber sichern koennen (ich weiss
aber nicht, ob kommerzielle Backup-Programme das koennen und ob
sich nicht in jedem Fall eine Sperrung der Datenbank empfiehlt)...

viele Gruesse
Thomas Berger
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3-nr1 (Windows XP)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFB65HoENVh3bB0lwMRAiBVAJ483o4hhVo9T2TiExY896tNjrtZagCfe9J5
cwf65Lmk6rhUYlSWoY2Lx50=
=n+y/
-----END PGP SIGNATURE-----




Mehr Informationen über die Mailingliste Allegro