Storage Engine MEMORY benötigt ab 2.0.16?

In diesem Forum können Fragen zum OrderSprinter gestellt werden.
hilde
Beiträge: 5
Registriert: Mi 21. Jul 2021, 14:11

Storage Engine MEMORY benötigt ab 2.0.16?

Beitrag von hilde »

Hallo,

wie in meinem letzten Post [1] beschrieben, versuche ich gerade OrderSprint auf meinem Server aufzusetzen. Dabei möchte ich insbesondere meinen Datenbank-Cluster mit integrierter Ausfallsicherung nutzen. Deswegen ist die einzige Storage Engine, die dort verfügbar ist InnoDB. Bei der Installation von Ordersprint bekomme ich den Fehler
1286 Unknown storage engine 'MEMORY'
im Schritt "Update to 2.0.16". Also habe ich mal die Version 2.0.15 installiert, was wunderbar funktioniert.

Sehe ich es also richtig, dass die storage engine 'MEMORY' ab der Version 2.0.16 verfügbar sein muss?
Wenn ja: Gibt es eine Möglichkeit die Tabellen, die diese storage engine benötigen, in eine andere Datenbank zu legen (die sollten ja denke ich eh nicht gesichert werden)?
Wenn nein: Wie kann ich neuere Versionen ohne diese storage engine installieren?

Vielen Dank!

[1] viewtopic.php?f=2&t=882
pichel
Administrator
Beiträge: 1168
Registriert: So 13. Sep 2015, 19:48
Wohnort: Hamburg
Kontaktdaten:

Re: Storage Engine MEMORY benötigt ab 2.0.16?

Beitrag von pichel »

Hallo Hilde,

die Memory Storage Engine ist eine Variante, bei der die Tabellen einer Datenbank im RAM vorgehalten wird. Bei einem Ausfall der DB oder einem Neustart sind die Daten futsch, aber der Zugriff ist unheimlich schnell - also genau das Richtige für die Kundenansicht, bei der einfach nur die augenblicklich gebuchten Artikel auf einem Kundendisplay dargestellt werden und ich dafür einen schnellen Zwischenspeicher benötige. Die Kundenansicht habe ich mit 2.0.18 eingebaut, warum ein Update auf 2.0.16 bereits schieflaufen soll, ist mir daher ein Rätsel.

Aber wenn bei dir die Memory-Engine nicht verfügbar ist, prüfe bitte, ob du eine einigermaßen aktuelle MySQL/MariaDB-Version hast, die Memory-Engine in deiner Umgebung eventuell extra installiert werden muss, die Memory-Engine in der my.ini bzw. my.cnf wegkonfiguriert wurde. Mehr fällt mir dazu gerade auch nicht ein.

Natürlich kannst du Memory durch InnoDB in der version.php ersetzen. Dann wird dein System aber etwas ausgebremst und beim nächsten Update wird es wieder zurückgesetzt, was du spätestens merkst, wenn du "Starte Produktivbetrieb" anklickst oder ein Backup wieder importieren möchtest.

Gruß,

Stefan
Stefan Pichel
Entwickler der Kassensoftware OrderSprinter (http://www.ordersprinter.de)
hilde
Beiträge: 5
Registriert: Mi 21. Jul 2021, 14:11

Re: Storage Engine MEMORY benötigt ab 2.0.16?

Beitrag von hilde »

Hallo Stefan,
die Memory Storage Engine ist eine Variante, bei der die Tabellen einer Datenbank im RAM vorgehalten wird. Bei einem Ausfall der DB oder einem Neustart sind die Daten futsch, aber der Zugriff ist unheimlich schnell - also genau das Richtige für die Kundenansicht, bei der einfach nur die augenblicklich gebuchten Artikel auf einem Kundendisplay dargestellt werden und ich dafür einen schnellen Zwischenspeicher benötige. Die Kundenansicht habe ich mit 2.0.18 eingebaut, warum ein Update auf 2.0.16 bereits schieflaufen soll, ist mir daher ein Rätsel.
Das hatte ich vermutet, mal sehen, ob es auch mit einer langsameren Datenbank funktioniert. Vielleicht war die Version nur ein Anzeigefehler oder ich habe falsch hingeguckt.
Aber wenn bei dir die Memory-Engine nicht verfügbar ist, prüfe bitte, ob du eine einigermaßen aktuelle MySQL/MariaDB-Version hast, die Memory-Engine in deiner Umgebung eventuell extra installiert werden muss, die Memory-Engine in der my.ini bzw. my.cnf wegkonfiguriert wurde. Mehr fällt mir dazu gerade auch nicht ein.
Die Memory-Engine ist bei mir bewusst nicht verfügbar, weil ich ein Cluster mit drei gespiegelten Datenbankservern habe und die Software, die die Spiegelung und Ausfallsicherheit übernimmt, unterstützt ausschließlich InnoDb (was auch inhaltlich Sinn ergibt).
Natürlich kannst du Memory durch InnoDB in der version.php ersetzen. Dann wird dein System aber etwas ausgebremst und beim nächsten Update wird es wieder zurückgesetzt, was du spätestens merkst, wenn du "Starte Produktivbetrieb" anklickst oder ein Backup wieder importieren möchtest.
Danke für den Tipp, werde das mal versuchen. Die Datei, in der das geändert werden muss ist die webapp/php/utilities/basedb.php (nur für den Fall, dass das noch mal jemand anders sucht).

Viele Grüße
Hilde
Antworten