Winzip/ Batch/ Laufende Datenbanken/ Fehler log.txt
Gute Tag zusammen,
ich habe folgendes Problem:
Ich habe eine Batch Datei erstellt die einige Ordner mit Winzip direkt packt und diese Ordner dann speichert. Der Code sieht folgendermaßen aus (Exemplarisch für einen Ordner):
c:\programme\winzip\winzip32.exe -min -a -r -p v:\temp\xy\xy.zip v:\temp\xy\*.*
So weit so gut....
In den genannten Ordnern befinden sich Access Datenbanken.
Das eigentliche PROBLEM: Wenn diese Access Datenbanken gerade geöffnet sind oder laufen, schmeißt WINZIP mir eine Fehlermeldung raus:
Warnung: Die folgende Datei wird derzeit von einem anderen Programm verwendet. Wenn
Warnung: das Programm in die Datei schreibt, während WinZip diese komprimiert, wird die
Warnung: komprimierte Datei evtl. beschädigt: v:\TEMP\xy\ab.ldb
Die Datenbanken können vor der Sicherung aber nicht geschlossen werden, müssen also auf sein und laufen.
Frage: Gibt es die Möglichkeit, trotzdem die Sicherung durchzuführen und ggf. die Fehlermeldung in ein seperates Logfile zu speichern, so das winzip durch läuft und die komplette Sicherung durchführt, ob wohl es Fehlermeldungen gibt?????
LG
RWErene81
ich habe folgendes Problem:
Ich habe eine Batch Datei erstellt die einige Ordner mit Winzip direkt packt und diese Ordner dann speichert. Der Code sieht folgendermaßen aus (Exemplarisch für einen Ordner):
c:\programme\winzip\winzip32.exe -min -a -r -p v:\temp\xy\xy.zip v:\temp\xy\*.*
So weit so gut....
In den genannten Ordnern befinden sich Access Datenbanken.
Das eigentliche PROBLEM: Wenn diese Access Datenbanken gerade geöffnet sind oder laufen, schmeißt WINZIP mir eine Fehlermeldung raus:
Warnung: Die folgende Datei wird derzeit von einem anderen Programm verwendet. Wenn
Warnung: das Programm in die Datei schreibt, während WinZip diese komprimiert, wird die
Warnung: komprimierte Datei evtl. beschädigt: v:\TEMP\xy\ab.ldb
Die Datenbanken können vor der Sicherung aber nicht geschlossen werden, müssen also auf sein und laufen.
Frage: Gibt es die Möglichkeit, trotzdem die Sicherung durchzuführen und ggf. die Fehlermeldung in ein seperates Logfile zu speichern, so das winzip durch läuft und die komplette Sicherung durchführt, ob wohl es Fehlermeldungen gibt?????
LG
RWErene81
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 52244
Url: https://administrator.de/contentid/52244
Ausgedruckt am: 22.11.2024 um 20:11 Uhr
7 Kommentare
Neuester Kommentar
Eine direkte Antwort auf deine Frage habe ich zwar nicht, aber generell hast du 2 Möglichkeiten Access DBs im laufenden Betrieb zu sichern:
Du kopierst die MDB/MDE in ein anderes Verzeichnis, und zipst sie dort
-oder-
Du schliest alle "*.ldb" Dateien aus - darin speichert Access eh nur den aktuell mit der DB arbeitenten User.
Du kopierst die MDB/MDE in ein anderes Verzeichnis, und zipst sie dort
-oder-
Du schliest alle "*.ldb" Dateien aus - darin speichert Access eh nur den aktuell mit der DB arbeitenten User.
Moin rwerene81,
willkommen im Forum.
@slainthemhath
Die erste Idee -eine Kopie der *.mdb zippen- könnte funktionieren (mit allen Konsequenzen allerdings wie anderer Pfad etc).
Die zweite Idee aber eher nicht. Es sind immer beide Dateien - *.mdb und .ldb gesperrt.
Dann würde ich schon fast eher den Weg gehen, für die *.mdb-Sicherung einen separaten Mini-Batch zu schreiben. Der kann dann in aller Ruhe bei jeder *.mdb-Datei prüfen, ob eine gleichnamige .ldb-Datei mit heutigem Datum im selben Verzeichnis existiert und wenn ja: von beiden die Finger lassen.
@Rene
WTF muss denn die Sicherung laufen, während auf den *.mdb's gearbeitet wird???
Nun sach nicht, ihr habt eine konzernweit laufende Applikation auf M$-Access-Basis 24x7x365 am Laufen?!?
Dann wechsele ich sofort zu Yellow Strom oder e.on....
Gruss
Biber
willkommen im Forum.
@slainthemhath
Die erste Idee -eine Kopie der *.mdb zippen- könnte funktionieren (mit allen Konsequenzen allerdings wie anderer Pfad etc).
Die zweite Idee aber eher nicht. Es sind immer beide Dateien - *.mdb und .ldb gesperrt.
Dann würde ich schon fast eher den Weg gehen, für die *.mdb-Sicherung einen separaten Mini-Batch zu schreiben. Der kann dann in aller Ruhe bei jeder *.mdb-Datei prüfen, ob eine gleichnamige .ldb-Datei mit heutigem Datum im selben Verzeichnis existiert und wenn ja: von beiden die Finger lassen.
@Rene
WTF muss denn die Sicherung laufen, während auf den *.mdb's gearbeitet wird???
Nun sach nicht, ihr habt eine konzernweit laufende Applikation auf M$-Access-Basis 24x7x365 am Laufen?!?
Dann wechsele ich sofort zu Yellow Strom oder e.on....
Gruss
Biber
@slainthemhath
Die erste Idee -eine Kopie der *.mdb zippen-
könnte funktionieren (mit allen
Konsequenzen allerdings wie anderer Pfad
etc).
Das funktioniert - falls die Anwendung mit Transaktionen arbeitet,Die erste Idee -eine Kopie der *.mdb zippen-
könnte funktionieren (mit allen
Konsequenzen allerdings wie anderer Pfad
etc).
sind die Daten danach sogar konsistent (selbst schon mit ~3 GB an MDBs, an denen
~70 User arbeiten ausprobiert ^^)
Die zweite Idee aber eher nicht. Es sind
immer beide Dateien - *.mdb und .ldb
gesperrt.
*nachles*immer beide Dateien - *.mdb und .ldb
gesperrt.
Ok, stimmt, WinZip beschwert sich ja ueber "in Verwendung" und nicht ueber "ist gesperrt"
Na gut, rene,
dann sorry für die bösartige Unterstellung mit diesem Stromkonzern.
Aber dennoch, wieso dann nicht den Prozess abändern:
und dort hintendran den Start der Sicherung hängen?
Und auch nochmal die Frage: wenn die Daten ein derartiges Volumen erreicht haben, wäre dann nicht der Zeitpunkt gekommen über eine SQL-Server-DB- nachzudenken?
Also etwas mir Datenbank-Engine? Was sich auch starten oder stoppen lässt? Oder replizieren?
Access ist ja eine ganz nette Krücke zur Ich-muss-500-Artikel-für-fast-2000-Kunden-verwalten-Problematik, aber doch eher nicht für Daten gedacht, deren Auswertung 10 Stunden braucht...
Gruss
Biber
dann sorry für die bösartige Unterstellung mit diesem Stromkonzern.
Aber dennoch, wieso dann nicht den Prozess abändern:
2. Tags über wird "an" den Accessdatenbanken gearbeitet und Nachts werden diese dann ausgeführt, die wiederum andere Berechnungsbrogramme starten etc
und dort hintendran den Start der Sicherung hängen?
Und auch nochmal die Frage: wenn die Daten ein derartiges Volumen erreicht haben, wäre dann nicht der Zeitpunkt gekommen über eine SQL-Server-DB- nachzudenken?
Also etwas mir Datenbank-Engine? Was sich auch starten oder stoppen lässt? Oder replizieren?
Access ist ja eine ganz nette Krücke zur Ich-muss-500-Artikel-für-fast-2000-Kunden-verwalten-Problematik, aber doch eher nicht für Daten gedacht, deren Auswertung 10 Stunden braucht...
Gruss
Biber