TKSoft-Online

Backup-Lösung für tägliche Sicherung PDF Drucken E-Mail
( 1 Vote )
MS-Access Bsp. DB's - Bsp. Downloads Sicherheit
  
Montag, den 14. Januar 2008 um 01:00 Uhr

Problemstellung:

 

Voraussetzungen:

Das Bsp ist unter A00, AXP, A03 lauffähig, unter A07 wurde es nicht getestet.

- tk_Backup_FE00.mdb,
  das Backup Tool muss sich im Verzeichnis „C:\tk_Backup“ befinden
-tk_Backup_BE00.mdb,
  das Backend für das Bsp muss sich im Verzeichnis „C:\tk_Backup \Backend“ befinden
- sevZip32.dll enthält die Zip- und Unzip-Algorithmen
  Die DLL muss sich im Windows-System Verzeichnis befinden
  Diese DLL ist eine C-DLL und muss nicht registriert werden.
  Die Funktionen werden per DECLARE-Anweisung eingebunden

Wobei sich die Pfadangaben hier nur auf das Bsp beziehen und nicht zwingend sind.


Grundidee:

Es soll eine Möglichkeit geschaffen werden, ein Backuplösung zu erstellen,
die es ermöglicht jeden Wochentag ein Backup des Backends zu erstellen.
Nach einer Woche wird das Backup automatisch überschrieben.
Alle Informationen über das Backup werden in eine INI-Datei geschrieben.
Die Backup Kopie des Backends wird automatisch komprimiert.
Die Ausgabe erfolgt wahlweise als MDB- oder ZIP-Datei.

Funktionsweise:

Benötigte Objekte:
Tabellen:     tbl_Backup                  enthält die Backup-Optionen
Formulare:  frm_Backup                 zum Ausführen des Backup’s bzw. Restore
Module:      
cls_FileDialog              Datei- und Verzeichnis Öffnen Dialog
                    mod_Funktionen         alle benötigten Sub’s und Funktionen             
                    mod_Zip_Funktionen
  Prozeduren für ZIP und UNZIP
Die Tabelle tbl_Backup enthält 3 Felder für die Backup-Optionen, Pfad zum Backup-Verzeichnis,
Name und Pfad des Backends und Ausgabeoption (MDB- oder ZIP-Datei)

Das Formular frm_Backup ist zur Steuerung des Backup’s bzw. Restore vorgesehen.

Im linken Bereich befindet sich der Backup-Teil.
 
Dort wird der Pfad des Backupverzeichnisses, der Name und Pfad des Backends und die
die Art der Ausgabe bestimmt.
Der Button „Daten sichern“ erstellt das Backup und schreibt die INI-Datei.
Für jeden Wochentag wird das Backup in einen extra Ordner erstellt.
Ist dieser nocht nicht vorhanden wird dieser erstellt.
z.B.:
C:\tk_Backup \Backend\Backup\Mo
C:\tk_Backup \Backend\Backup\Di
usw.
Ist die Woche um, wird das Backup von letztem Montag mit dem neuen vom
Montag überschrieben.

Durch eine Klick auf den Button „Daten sichern“ wird die Funktion „Save_BE“ aufgerufen.

Die Funktion erwartet folgende Parameter:

Public Function Save_BE(strPath As String, strDBNameBE As String, intOutput As Integer) As Boolean
strPath As String = Pfad des Backupverzeichnisses
strDBNameBE = Name und Pfad des Backend
intOutput = 1=MDB, 2=ZIP

Rückgabewert der Funktion: True = Backup Erfolgreich, False = Backup Fehler

Diese Funktion arbeitet in mehreren Schritten:
1. ermittelt ob die benötigten Verzeichnisse vorhanden sind, und legt diese bei Bedarf an.
2. Das Backend wird in das temporäre Verzeichniss kopiert.
3. Schreiben der INI-Datei
4. Die Backup-Datei wird mittels CompactDatabase komprimiert.
5. Kopieren des Backups in das richtige Unterzeichnis 

Die Erstellung und Komprimierung des Backups und die INI-Datei werden in einem temporären Verzeichnis durchgeführt:
C:\tk_Backup \Backend\Backup\BE_Temp um bei Fehlern nicht ein bestehendes Backup
zu überschreiben.

Sollte die Ausgabe in einer ZIP-Datei erfolgen wird eine ZIP-Datei erstellt und die MDB-Datei gelöscht.

Die „Backup.ini“ Datei enthält folgende Informationen:
- Pfad und Name des Backends temporär
- Pfad und Name des Backends im Wochentagsbackup-Verzeichnis
- Datum des Backups
- Uhrzeit des Backups
- Ausgabeformat des Backups

Die Erstellung der ZIP-Datei erfolgt durch die Funktion „Zip_File“.
Diese ruft Routinen aus der sevZip32.dll auf.
Da diese DLL keine Freeware ist, gehe ich hier nicht weiter auf die Funktionalität ein.

Im rechten Bereich befindet sich der Restore-Teil.


In der Optionsgruppe werden alle vorhandenen Backups für jeden Wochentag angezeigt.
Ist es nicht vorhanden erscheint „...nicht vorhanden“ als Buttonbeschriftung.
Die Beschriftung erfolgt durch das Auslesen der INI-Datei für jeweiligen Wochentag.
Dies wird durch die Funktion „ReadINI“ realisiert.

Der Funktionaufruf und Parameter:

Public Function ReadINI(strBEPath As String, strWT As String) As String
strBEPath As String = Pfad des Backupverzeichnisses
strWT = Kurzbezeichnung des Wochentages

Für den Montag-Button wäre z.B. der Aufruf:

Me.tgl_Mo.Caption = ReadINI(„C:\tk_Backup\Backend\Backup“, "Mo")

Soll das Backend wieder aus einer Backup-Datei hergestellt werden,
muss nur das entsprechende Backup in der Optionsgruppe
ausgewählt werden. Danach wird der Button „Daten wiederherstellen“ aktiviert.
Mit einem Klick auf diesen Button wird die Funktion „Restore_BE“ aufgerufen.

Der Funktionaufruf und Parameter:

Public Function Restore_BE(strBE_Path As String, strDBNameBE As String, intWT As Integer) As Boolean
strBE_Path = Pfad des Backupverzeichnisses
strDBNameBE = Name und Pfad des Backend
intWT = Wochentag der gewählten Sicherung

Rückgabewert der Funktion: True = Restore Erfolgreich, False = Restore Fehler

Diese Funktion arbeitet in mehreren Schritten:
1. Auslesen der INI-Datei
2. zurückkopieren des Backups.
3. bei Bedarf Unzip des Backups

Die Dekomprimierung der ZIP-Datei erfolgt durch die Funktion „Unzip_File“.
Diese ruft ebenfalls Routinen aus der sevZip32.dll auf.

Ist das Backend in Benutzung erfolgt eine Fehlermeldung.

Wie kann ich das in der Praxis nutzen?


In der Optionsgruppe werden alle vorhandenen Backups für jeden Wochentag angezeigt.
Ist es nicht vorhanden erscheint „...nicht vorhanden“ als Buttonbeschriftung.
Die Beschriftung erfolgt durch das Auslesen der INI-Datei für jeweiligen Wochentag.
Dies wird durch die Funktion „ReadINI“ realisiert.

Der Funktionaufruf und Parameter:

Public Function ReadINI(strBEPath As String, strWT As String) As String
strBEPath As String = Pfad des Backupverzeichnisses
strWT = Kurzbezeichnung des Wochentages

Für den Montag-Button wäre z.B. der Aufruf:

Me.tgl_Mo.Caption = ReadINI(„C:\tk_Backup\Backend\Backup“, "Mo")

Soll das Backend wieder aus einer Backup-Datei hergestellt werden,
muss nur das entsprechende Backup in der Optionsgruppe
ausgewählt werden. Danach wird der Button „Daten wiederherstellen“ aktiviert.
Mit einem Klick auf diesen Button wird die Funktion „Restore_BE“ aufgerufen.

Der Funktionaufruf und Parameter:

Public Function Restore_BE(strBE_Path As String, strDBNameBE As String, intWT As Integer) As Boolean
strBE_Path = Pfad des Backupverzeichnisses
strDBNameBE = Name und Pfad des Backend
intWT = Wochentag der gewählten Sicherung

Rückgabewert der Funktion: True = Restore Erfolgreich, False = Restore Fehler

Diese Funktion arbeitet in mehreren Schritten:
1. Auslesen der INI-Datei
2. zurückkopieren des Backups.
3. bei Bedarf Unzip des Backups

Die Dekomprimierung der ZIP-Datei erfolgt durch die Funktion „Unzip_File“.
Diese ruft ebenfalls Routinen aus der sevZip32.dll auf.

Ist das Backend in Benutzung erfolgt eine Fehlermeldung.

Wie kann ich das in der Praxis nutzen?

Kopiere alle in der Bsp-DB enthaltene Objekte in dein Frontend.
Rufe das Formular frm_Backup auf und aktualisiere die Pfade für deine Zwecke.
Die Datei sevZip32.dll muss in das Windows System32-Verzeichnis kopiert werden.
Danach steht einem Backup nichts mehr im Wege.
Zusammenfassung

Diese Bsp-DB erhebt nicht den Anspruch auf Vollständigkeit und auch nicht
v
ollständige Sicherheit.
Der Urheber haftet nicht für eventuell auftretende Datenverluste oder sonstige Schäden
durch diese Bsp-Datenbank oder deren auszugweisen Nutzung.

Download nur für registrierte User

Backup-Lösung für tägliche Sicherung

Backup-Lösung für tägliche Sicherung, Ausgabe wahlweise auch als Zip-Datei
für A00-A03, A07 nicht getestet

Die Setup-Datei enthält eine Version ab A00

Diese Kategorie erfordert eine Registrierung um Daten downloaden zu können.
Sollten Sie bereits registriert sein, so melden Sie sich bitte an.




Erstellt am
Dateigröße
Downloads
10.01.2008
619.28 KB
2880

 

Downloads in dieser Kategorie

MS-Access Sicherheit

MS-Access Sicherheit

 Seite: 1


DatumKlicks
Total6135
Do. 242
Mi. 2310
Di. 229
Mo. 213
So. 204
Sa. 191
Fr. 187
Aktualisiert ( Mittwoch, den 19. Oktober 2011 um 12:52 Uhr )
 

Kommentare  

 
0 # gerd1712 2010-10-15 10:10
schön und gut aber es lässt sich nitcht öffnen und für ne BSP datei auch wenig einsicht nehmen! Kann man das ändern????
Antworten | Antworten mit Zitat | Zitieren
 
 
0 # TommyK 2010-10-15 11:12
Zitat:
schön und gut aber es lässt sich nitcht öffnen

Wie nicht öffnen, es ist ein Setup und muss installiert werden.

Gruß Tommy
Antworten | Antworten mit Zitat | Zitieren
 
 
0 # cuy50 2011-01-09 23:49
Hallo Tommy
Es funktioniert super
Kann man es so programmieren, dass man nicht nur eine Datei sondern ein gesamtes Verzeichnis sichern kann ?
Danke
christoph
Antworten | Antworten mit Zitat | Zitieren
 
 
0 # TommyK 2011-01-10 04:36
Hallo Christoph,

Zitat:
Kann man es so programmieren, dass man nicht nur eine Datei sondern ein gesamtes Verzeichnis sichern kann ?


Klar, das geht auch.
Was sind das für Dateien in dem Verzeixchnis?

Gruß Tommy
Antworten | Antworten mit Zitat | Zitieren
 
 
0 # cuy50 2011-01-10 16:43
Hallo Thomas,
danke für die rasche Antwort
Im Verzeinis befinden sich Dateien die ich für meine Datenbank benötige
*.mdb (2x)
*.jpg
*.lnk
*.ico
*.doc
*.xls
und 2 Ordner (Unterverzeichn isse)
mfg
christoph
Antworten | Antworten mit Zitat | Zitieren
 
 
0 # TommyK 2011-01-10 18:33
Hallo Christoph,

dann mache ich diese Woche mal eine Bsp-DB.
Aber mit dem Zippen wird es dann nichts da die verwendete Version der sevZip das Packen von Verzeichnissen nicht zu lässt.

Gruß Tommy
Antworten | Antworten mit Zitat | Zitieren
 
 
0 # cuy50 2011-01-10 18:40
Hallo Thomas
das ist super
Zippen wäre zwar gut, Hauptsache ist aber, dass ich das ganze Verzeichnis (Ordner mit Unterordner) sichern kann.
Danke
christoph
Antworten | Antworten mit Zitat | Zitieren
 
 
0 # cuy50 2011-01-11 17:32
Hallo Thomas
Danke für die schnelle Hilfe !
Was ich im ersten Moment gesehen habe, funktioniert es Super
Ich hoffe dass ich Dich wenn es notwendig ist weiter belässtigen darf.
mfg
christoph
Antworten | Antworten mit Zitat | Zitieren
 
 
0 # TommyK 2011-01-12 05:47
Hallo Christoph,

Zitat:
Ich hoffe dass ich Dich wenn es notwendig ist weiter belässtigen darf.

Kein Problem, aber dann führen wir bitte das Problem im Forum fort.

Gruß Tommy
Antworten | Antworten mit Zitat | Zitieren
 
 
0 # cuy50 2011-01-13 02:25
Hallo Thomas!
Dass ist genau was ich brauche.
Netter wäre es, wenn der Backupordner anstatt der Wochentagsbezei nung die Bezeichnung mit dem aktuellen Datum hätte.
Gruß Christoph
Antworten | Antworten mit Zitat | Zitieren
 
 
0 # TommyK 2011-01-13 07:32
Moin Christoph,

bitte das Problem im Forum weiter diskutieren.
Die Lösung für die Ordner Benennung mit Datum habe ich dort auch geschrieben.
http://www.tksoft-online.de/index.php/forum/10-ms-access-fragen-und-antworten/760-backup-bsp-fuer-ganze-verzeichnisse.html#763

Gruß Tommy
Antworten | Antworten mit Zitat | Zitieren
 
 
0 # cuy50 2011-01-13 17:21
danke für rasche Lösung
funktioniert super
Antworten | Antworten mit Zitat | Zitieren
 

Kommentar schreiben


Sicherheitscode
Aktualisieren

Login

Latest Comments

Latest Forum Posts

Mehr »

Download Statistik

41 Kategorien
187 Dateien
173483 Downloads