Storage Engine MEMORY benötigt ab 2.0.16?

Antwort erstellen

Bestätigungscode
Gib den Code genau so ein, wie du ihn siehst; Groß- und Kleinschreibung wird nicht unterschieden.
Smileys
:D :) ;) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :!: :?: :idea: :arrow: :| :mrgreen: :geek: :ugeek:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[url] ist eingeschaltet
Smileys sind eingeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Storage Engine MEMORY benötigt ab 2.0.16?

Re: Storage Engine MEMORY benötigt ab 2.0.16?

von hilde » Mo 2. Aug 2021, 23:12

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

Re: Storage Engine MEMORY benötigt ab 2.0.16?

von pichel » Sa 31. Jul 2021, 02:55

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

Storage Engine MEMORY benötigt ab 2.0.16?

von hilde » Fr 30. Jul 2021, 08:16

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

Nach oben