Die Zeit wann ein Backup erstellt werden soll, lässt sich im Control Panel durch einen klick auf "Tägliche Aufgaben" (Navigation links) aufrufen.

Mit der ControlPanel-Version 1.4.7 ist es möglich Backups automatisch löschen zu lassen, die älter als x-Tage sind. 


Das Control Panel bietet eine einfache Option, um ein Backup der Amadeus II - Datenbank zu erstellen.

Das Backup läuft dabei wie folgt ab:

  1. Exportiere die "amadeus"-Datenbank in einen SQL Dump
  2. Exportiere die "amadeus_xxxx"-Datenbank (wobei xxxx durch die aktuelle Kundennummer ersetzt wird) in einen SQL Dump
  3. Verschlüssele die beiden Datenbanken mit einem Hash, erzeugt aus der Kunden-Nummer.
  4. Komprimiere die verschlüsselten Datenbanken in einem ZIP Archiv
  5. Verschlüssele das ZIP-Archiv mit einem weiteren, anderen Hash - ebensfalls erzeugt aus der Kunden-Nummer.
  6. Speichere das erstellte Archiv in den Unterordner \Backup der Amadeus II-Installation.

Die erzeugten Hash-Codes sind weder dem Kunden noch dem Händler bekannt - eine Entschlüsslung der Archive zur Wiederherstellung einer Datenbank ist nur durch das CP in der gleichen Version, mit der das Backup erstellt wurde, möglich. 

Wichtiger Hinweis

Diese Schritte sollten unbedingt zusammen mit einem Kassentechniker Ihres Fachhandelspartners durchgeführt werden.

Startet der mysql-Dienst nicht mehr so ist das mysql_error.log - Logfile (findet sich in mysql/data) die erste Anlaufstelle um herauszufinden, wo der Fehler wirklich liegt. Treten hier Fehler auf wie

  • "Cannot open tablespace amadeus_XXXX" 
  • InnoDB: Error: could not open single-table tablespace file .\amadeus_XXXX\*********
  • InnoDB: Error: could not open single-table tablespace file .\amadeus_XXXX\*********
    InnoDB: We do not continue the crash recovery, because the table may become
    InnoDB: corrupt if we cannot apply the log records in the InnoDB log to it.
    InnoDB: To fix the problem and start mysqld:
    InnoDB: 1) If there is a permission problem in the file and mysqld cannot
    InnoDB: open the file, you should modify the permissions.
    InnoDB: 2) If the table is not needed, or you can restore it from a backup,
    InnoDB: then you can remove the .ibd file, and InnoDB will do a normal
    InnoDB: crash recovery and ignore that table.
    InnoDB: 3) If the file system or the disk is broken, and you cannot remove
    InnoDB: the .ibd file, you can set innodb_force_recovery > 0 in my.cnf
    InnoDB: and force InnoDB to continue crash recovery here.

dann ist das einspielen des Backups die einzige und schnellste Lösung. 

Desaster Recovery bis v1.4.6

Um ein über das ControlPanel erstelltes Backup wieder einzuspielen, bitte die folgenden Schritte befolgen:

  • Nicht unnötig oft versuchen, den mysql-Dienst neu zu starten. Wenn er sich nach 1-2 Versuchen nicht starten lässt, dann wird dies auch beim 10. Versuch nicht klappen. 
  • Keine Updates des CP oder der Kasse durchführen. Backups können nur mit der CP-Version eingespielt werden, mit der sie erstellt wurden!
  • Amadeus II CP beenden.
  • eine Kopie des data-Verzeichnisses anlegen, bzw. dieses Umbenennen. 
  • im mysql-Verzeichnis gibt es eine Verzeichnis data_prev. Dieses Verzeichnis kopieren (nicht nur umbenennen!) und die Kopie in data umbenennen. 
  • ab Version 1.4.2: mysql-Dienst über die MS Windows-Dienstverwaltung starten, ins Verzeichnis "tools" im AmadeusII-Ordner wechseln und darin die "db_maintenance.exe" ausführen. Warten bis das Fenster sich selbständig schließt. Anschließend den mysql-Dienst neustarten. 
  • Das CP starten. Die initiale, leere Datenbank wird durch das CP wieder angelegt. 
  • Im Anschluss sollte der mysql-Dienst starten. An dieser Stelle ist ein Neustart des Rechners/Servers fällig. 
  • Bei laufendem mysql-Dienst kann nun das Backup über das CP eingespielt werden. Hierbei unbedingt darauf achten, dass man das richtige Backup (das letzte, welches vor dem Fehler geschrieben wurde) einspielt. 

Diese Punkte müssen in genau dieser Reihenfolge und nur EINMALIG durchgeführt werden. Wird versucht mehrere Backups übereinander einzuspielen wird dies wieder zu einer defekten Datenbank führen. 

Tritt die Fehlermeldung "Packets lager than max_allowed_packet are not allowed." auf, so muss nachfolgende Anpassung durchgeführt werden:

Den mysql-Dienst beenden und im Verzeichnis "..\mysql\bin" in der Datei "my.ini" den Wert "max_allowed_packet = " auf "100M" anpassen (je nach Datenmenge kann es durchaus vorkommen, dass der Wert auf "200M" erhöht werden muss. Hierzu bitte immer den verfügbaren Arbeitsspeicher im Auge behalten). Die Änderung abspeichern und den Dienst wieder starten. 


Im Anschluss unbedingt prüfen, ob im mysql_error.log - Logfile nach dem Einspielen des Backups KEINE Fehler mehr zu finden sind. 


Sollte das Verzeichnis data_prev.rar nicht existieren (vor allem bei Installation von Mitte 2016), so findet sich dieses Verzeichnis hier: 

data_prev.rar

Desaster Recovery ab v1.4.7

Um ein über das ControlPanel erstelltes Backup wieder einzuspielen, bitte die folgenden Schritte befolgen:

  • Nicht unnötig oft versuchen, den mysql-Dienst neu zu starten. Wenn er sich nach 1-2 Versuchen nicht starten lässt, dann wird dies auch beim 10. Versuch nicht klappen. 
  • Keine Updates des CP oder der Kasse durchführen. Backups können nur mit der CP-Version eingespielt werden, mit der sie erstellt wurden!
  • Amadeus II CP beenden.
  • eine Kopie des data-Verzeichnisses anlegen, bzw. dieses Umbenennen. 
  • in das Verzeichnis "..\AmadeusII\tools\" wechseln und die Batch-Datei "defaultDBinit.bat" ausführen und warten, bis die Konsole automatisch geschlossen wird. Im Verzeichnis mysql sollte nun ein Ordner "data" angelegt worden sein. 
  • Das CP starten. Die initiale, leere Datenbank wird durch das CP wieder angelegt. 
  • Im Anschluss sollte der mysql-Dienst starten. An dieser Stelle ist ein Neustart des Rechners/Servers fällig. 
  • Bei laufendem mysql-Dienst kann nun das Backup über das CP eingespielt werden. Hierbei unbedingt darauf achten, dass man das richtige Backup (das letzte, welches vor dem Fehler geschrieben wurde) einspielt. 

Diese Punkte müssen in genau dieser Reihenfolge und nur EINMALIG durchgeführt werden. Wird versucht mehrere Backups übereinander einzuspielen wird dies wieder zu einer defekten Datenbank führen. 

Tritt die Fehlermeldung "Packets lager than max_allowed_packet are not allowed." auf, so muss nachfolgende Anpassung durchgeführt werden:

Den mysql-Dienst beenden und im Verzeichnis "..\mysql\bin" in der Datei "my.ini" den Wert "max_allowed_packet = " auf "100M" anpassen (je nach Datenmenge kann es durchaus vorkommen, dass der Wert auf "200M" erhöht werden muss. Hierzu bitte immer den verfügbaren Arbeitsspeicher im Auge behalten). Die Änderung abspeichern und den Dienst wieder starten. 


Im Anschluss unbedingt prüfen, ob im mysql_error.log - Logfile nach dem Einspielen des Backups KEINE Fehler mehr zu finden sind.