EleLa - Elektronik Lagerverwaltung Hilfe

Tutorial - Backup der Datenbank

Dieses Tutorial soll zeigen welche Möglichkeiten EleLa für ein Backup der Datenbank bietet. Ein Backup ist sehr wichtig, da meist eine Restauration der Daten bei einem Ausfall der Datenbank nur schwer bis unmöglich ist.
Jeder sollte sich Gedanken über die Datensicherheit machen und entsprechen für den Fall der Fälle vorher vorsorgen, denn hinterher ist es meist zu spät. Daher sollte das Backup zyklisch ausgeführt werden, am besten automatisiert.

Es gibt anhand des Typs der Datenbank unterschiedliche Wege wie man vorgehen sollte bei

  • Backup bei SQLite (Dateibasierte Datenbank)
  • Backup bei MySQL, PostgreSQL oder MSSQL (Client/Server Datenbank)
  • Backup der EleLa Einstellungen (unabhängig von der Datenbank)
  • Backup bei Update von EleLa
  • Restauration eines Backups

1. Backup bei SQLite

Manuelles kopieren der Datenbank:

Bei SQLite ist die Datenbank eine einfache Datei, die mit einem Dateimanager einfach kopiert werden kann. Allerdings sollte die Datei nur dann kopiert werden, wenn alle EleLa Programme geschlossen sind.

Wo ist die Datenbank-Datei zu finden?

In der EleLa Konfigurationsdatei "EleLa.ini", der Parameter "Datenbank":
[DB]
Datenbank=.\EleLa.sq3

zeigt auf die Datei. (siehe auch: Konfiguration Datenbank)

Automatisches kopieren der Datenbank bei jedem EleLa Start:

Hierfür gibt es in der Konfigurationsdatei "EleLa.ini", die Parameter "StartCopy" und "StartRun":
[Programm]
StartCopy=.\Backup\EleLa.sq3
StartRun=.\Backup\Backup.bat

Mit "StartCopy" wird vor jedem Programmstart die SQLite Datenbankdatei kopiert und mittels "StartRun" kann ein Batch-Script ausgeführt werden, der die Datenbankdatei z.B. komprimiert und verschiedene Versionen verwaltet.
Wie diese Parameter genau funktionieren ist in "INI Datei Parameter" beschrieben, auch mit Beispiel der Batch Datei.

Halbautomatisches kopieren der Datenbank mittels EleLa Kommandozeilenparameter:

Wenn EleLa mit dem Parameter "-b" oder "--backup" gestartet wird, so wird EleLa die Datenbankdatei automatisch in ein Backup-Verzeichnis kopieren. Wie das genau funktioniert ist bei "Kommandozeilenparameter" beschrieben.
Somit hat man die Möglichkeit auf dem Desktop eine EleLa-Verknüpfung an zu legen, die bei Ausführen nur ein Backup erzeugt, oder man macht das in das Auto-Start von Windows oder man erzeugt einen automatischen Task, der z.B. Nachts ausgeführt wird, wenn niemand EleLa benutzt.

2. Backup bei MySQL, PostgreSQL oder MSSQL

Dies sind Serverbasierte Datenbanksysteme, bei denen hat man nicht so einfach die Möglichkeit die Datei(en) zu sichern wie bei SQLite. Oft sind diese Datenbanken auch irgendwo in einer IT Infrastruktur versteckt oder einfach nur auf einem NAS Server, auf dem man auch nicht so leicht Zugriff hat. Dennoch bietet hier EleLa recht einfache Möglichkeiten für einen automatischen Backup der Daten. Dieser Backup kann jederzeit erfolgen, auch wenn andere EleLa User online mit der Datenbank verbunden sind (im Gegensatz zu SQLite).
Ein Backup erzeugt immer automatisch eine SQLite Datenbank als Sicherung, die wiederum direkt mit EleLa als Konfiguration "SQLite" weiter verwendet werden kann um z.B. die Daten offline zu nutzen oder auch direkt in der Sicherung nach was zu suchen. Wenn Sie bereits eine neuere EleLa Version nutzen und eine ältere Sicherung (SQLite-Datenbank) öffnen, so wird EleLa vollautomatisch erst mal die alte Sicherungsdatei updaten auf die neue Datenstruktur, daher sollte vor der Nutzung mit EleLa erst mal die Datei kopiert werden.

Manuelles Sichern der Datenbank:

Unter Extras - F10 > Datenbank > Import/Export-Taste > "Importiere/Exportiere Datenbank" kann die Datenbank exportiert werden. Wie das genau funktioniert ist unter "Export/Import Datenbank" beschrieben.

Halbautomatisches kopieren der Datenbank mittels EleLa Kommandozeilenparameter:

Wenn EleLa mit dem Parameter "-b" oder "--backup" gestartet wird, so wird EleLa die Datenbank automatisch in ein Backup-Verzeichnis exportieren. Wie das genau funktioniert ist bei "Kommandozeilenparameter" beschrieben.
Somit hat man die Möglichkeit auf dem Dektop eine EleLa-Verknüpfung an zu legen, die bei Ausführen nur ein Backup erzeugt, oder man macht das in das Auto-Start von Windows.

Automatisches Backup - Auf dem Server:

Wer einen Server benutzt kann einen Windows-Task anlegen, der Zeitgesteuert EleLa mit dem Kommandozeilenparameter "-b" oder "--backup" aufruft. Somit wird vollautomatisch ein Backup der EleLa Daten erzeugt. Wie das genau funktioniert ist bei "Kommandozeilenparameter" beschrieben.
Dies sollte am Besten der Sysadmin einrichten, der auch für die Datensicherung verantwortlich ist.

Automatisches Backup mit dem Kommandozeilen Tool "EleLaBackup":

EleLaBackup kann ideal in Scripten verwendet werden, da es ohne GUI rein gesteuert über Kommandozeilenparameter funktioniert. Damit kann man ein Backup der Datenbank erzeugen wenn z.B. unter Linux keine grafische Oberfläche zur Verfügung steht (Hintergrundprozess mit Crontab gestartet). Details sind hier beschrieben.

3. Backup der EleLa Einstellungen

EleLa hat abgesehen von den Programmdateien nur 2 Dateien die Arbeitsplatzabhängig sind:

  • Die INI Datei
  • Die Tabellendatei

In der INI Datei sind grundlegende Parameter wie z.B. Datenbankzugriff gespeichert, alle Parameter sind in "INI Datei Parameter" aufgelistet. Diese Datei kann mittels dem "Konfigurationsdialog" jederzeit parametriert werden.

Wo die Tabellendatei ist, steht in der INI Datei im Parameter "TableFile". Diese Datei enthält die Ein-/Ausgeblendete Spalten sowie verschiedene Positionen und Fenstergrößen. Wenn die Datei gelöscht wird, so startet EleLa das nächste mal mit der programmierten Voreinstellung.

Zusätzlich gibt es auch Vorlagen für Ausdrucke, die jeder selbst erstellen kann und ebenfalls gesichert werden sollten, bevor man was ändert.

Globale Parameter, die für alle EleLa Arbeitsplätze gültig sind, werden automatisch mit einem Backup der Datenbank gesichert.

4. Backup bei Update von EleLa:

Bevor man eine neue EleLa.EXE aus z.B. der Versionsabfrage einspielt sollte man ein Backup der Datenbank (Siehe Punkt 1. oder 2.) sowie am besten dem gesamten EleLa Verzeichnis machen. Damit ist sichergestellt, dass wenn die neue EXE doch nicht gut funktioniert, dass man jederzeit auf die alte Version zurück springen kann. Ich empfehle das Backup als ZIP Datei zu erstellen, denn darin kann man nicht so leicht was ändern und der Stand aller Dateien ist in einem Archiv.

EleLa schreibt nichts in die Registry, es werden nur die Dateien vom EleLa Verzeichnis genutzt sowie die in der INI Datei parametrierten Dateien. Daher ist jederzeit nachvollziehbar was für ein EleLa Backup nötig ist.

5. Restauration eines Backups

Wenn man SQLite nutzt, so kann man einfach die gesicherte Datenbank zurück kopieren und schon ist die Sicherung die aktuelle Datenbank. Aber vorher die aktuelle sichern (siehe Punkt 1.). Wichtig: Alle EleLa Programme müssen bei dieser Aktion geschlossen sein.

Bei den anderen Datenbanken (MySQL/PostgreSQL/MSSQL) muss evt. zu erst ein neuer Server parametriert werden, falls der alte komplett zerstört wurde siehe "Konfiguration Datenbank". Anschließend wird mittels "Export/Import Datenbank" die Datenbank importiert. Dabei werden alle Tabellen geleert und mit den Daten der Sicherung wieder aufgebaut. Daher unbedingt vorher noch ein Backup erstellen (siehe Punkt 2.). Wichtig: Alle EleLa Programme, bis auf das eine mit dem man den Import durchführt, müssen bei dieser Aktion geschlossen sein.

Die anderen gesicherten EleLa Dateien können mit einem Dateimanager zurück kopiert/überschrieben werden.

Eine komplette Restauration der Sicherung ist somit mittels EleLa innerhalb weniger Minuten möglich, vorausgesetzt man hat eine ;-).


© 2010-2023 by Markus Müller