Datenbankserver upgraden auf MySQL 8 - was soll das?

  • mittlerweile sage ich zu mir selbst - "ruhe bewahren"

    Kann mir nicht vorstellen dass da etwas nicht mehr geht, da wären ja alle betroffen die irgendetwas mit einer Datenbank machen.


    Die erste eMail dazu hatte ich am 03.08.2021 bekommen.

    Da stand drin, dass es ab 10.08.2021 los geht, man aber noch kein genaues Datum nennen kann.


    Am 06.08.2021 ist nun die Meldung gekommen, dass der Update am 10.08.2021 durchgeführt wird.

    Was schon etwas kurzfristig ist, aber naja.


    Zitat


    wenngleich andererseits kommer­ziell be­trie­be­ne Shops grundsätzlich in der Lage sein sollten, eine Zweitinstanz innerhalb von dieser einen Woche in Betrieb zu nehmen


    diesen Satz kann ich nicht wirklich nachvollziehen.

    Nicht jeder kommer­ziell be­trie­be­ne Shop wird von einer Agentur verwaltet, dass ist auch absolut nicht erforderlich.

    Es gibt Firmen die sind groß und die sind klein.


    Natürlich haben große Firmen da jemanden, aber kleine haben eben keinen und machen alles selbst und haben dann auch evlt. wenig Zeit dafür.

  • Letztlich wurde diese Update-Aktion zumindest teilweise auch davon getriggert, dass eben Nextcloud angekündigt hatte, dass NC 21 MySQL 8 voraussetzt und deswegen bereits vor Monaten hier im Forum Nachfragen kamen. Es ist auch nicht so, dass netcup sich überhaupt nicht um die Software, die eben nicht von netcup stammt, kümmern würde. Ich habe z.B. auf Github bei imagick auch Beiträge eines gewissen netcup-Mitarbeiters gefunden, als es darum ging, dass PHP 8 ohne Imagemagick hier angeboten wurde - weil es schlicht noch keine offizielle, mit PHP 8 kompatible Version der benötigten Bibliothek gab.


    Als konstruktive Kritik zu verstehen, würde ich also allenfalls bemängeln, dass der First Level Support über anstehende Änderungen in der Technik zu wenig weiss und auf diese Informationen wohl auch nicht ohne Rückfrage bei der Technik keinen Zugriff hat. Wie hier z.B. die genaue MySQL-Version, die eingespielt werden soll und Folgen für von Kundenseite relativ häufig verwendeter Software. Hätte der Support z.B. die Information verfügbar gehabt, dass die neue MySQL-Version keine Probleme für Shopware ab Version x bedeutet (natürlich nicht nur für Shopware) und die genaue MySQL-Version (für diverse andere Kundensoftware, da sich weder Support noch Technik jede noch so exotische, potenziell auf einem Webhosting laufende Software im Detail anschauen können).


    Noch besser hätte ich gefunden, solche Informationen gleich in der Ankündigung des Updates an die Kunden mit raus zu schicken. Die exakte MySQL Version, die aufgespielt wird, dürfte ja mittlerweile feststehen. Dann hätten die Kunden Bescheid gewusst - entweder Entwarnung oder Handlungsbedarf - oder zumindest die genaue MySQL-Version als Grundlage für eigene Recherchen diesbezüglich zur Verfügung gehabt.

  • Natürlich haben große Firmen da jemanden, aber kleine haben eben keinen und machen alles selbst und haben dann auch evlt. wenig Zeit dafür.

    Böse formuliert: Ab dem Moment, ab dem der Shop nicht mehr läuft, kommen doch darüber keine neuen Aufträge mehr 'rein… also sollte irgendwann genug Zeit zur Verfügung stehen, sich alleine darauf zu konzentrieren, wenn es ja sonst nichts mehr zu tun gibt. Vorausgesetzt, der Shop ist wichtig/unternehmenskritisch, kann man durchaus kurzfristig entsprechende Expertise am Markt einkaufen. Eine Make-or-Buy-Analyse sollte im Laufe eines Tages durchzuführen sein – sofern noch nicht bereits erstellt, da sie Bestandteil eines Notfallplans ist, der ebenfalls für Eventualitäten ausgearbeitet sein sollte, wenn es sich hier nicht um eine wenige Wochen bestehendes Start-up handelt. Natürlich wird ein Einkauf in diesem Fall – egal ob Werkvertrag oder Vertrag auf Zeit und Materialbasis – sicher nicht billig(er), wenn eine kurzfristige Dienstleistung nachgefragt wird und eine unrealistisch niedrige Kostenschätzung wird Verhandlungen nur in die Länge ziehen. Unter Zeitdruck wird es auch nicht leichter, Anforderungen zu analysieren und ihre Umsetzung zu bewerten (vgl. Google-Bildersuche: Planung Ausführung Projekt Schaukel).

    VServer IOPS Comparison Sheet: https://docs.google.com/spreadsheets/d/1w38zM0Bwbd4VdDCQoi1buo2I-zpwg8e0wVzFGSPh3iE/edit?usp=sharing

    Einmal editiert, zuletzt von m_ueberall ()

    • Offizieller Beitrag

    Hallo zusammen,



    wir werden die zum Zeitpunkt des Upgrades aktuellste MySQL 8-Version installieren, das wäre aktuell 8.0.26. MySQL in der Version 5 bieten wir anschließend nicht mehr an. Neue Webhosting-Tarife werden in vielen Fällen bereits mit MySQL 8 bereitgestellt. Die Formulierung auf der Shopware-Webseite

    Zitat
    • MySQL >= 5.7 (außer 8.0.20 und 8.0.21)

    verstehe ich ebenfalls so, dass MySQL 8 unterstützt wird, ansonsten würden vermutlich zwei Versionen aus dem 8er-Versionsbranch nicht explizit erwähnt werden. Ich kann natürlich nur mutmaßen, aber evtl. war in diesen ein Bug o.ä. enthalten, der den Betrieb von Shopware beeinträchtigte. In jedem Fall wird weder auf die Version 8.0.20, noch 8.0.21, von uns aktualisiert.


    Wir haben das MySQL 8-Upgrade zum jetzigen Zeitpunkt eingeplant, weil wir auch im Rahmen unserer kontinuierlichen Marktüberwachung festgestellt haben, dass dies für beinahe alle Kunden keine größeren Schwierigkeiten mehr bedeuten dürfte. Selbst falls Änderungen, z.B. in selbst entwickelten Skripten, nötig sein sollten, sind diese in der Regel eher marginal.


    Abschließend sei noch erwähnt, dass unsere MySQL-Konfiguration für MySQL 8 mit maximaler Kompatiblität, z.B. für ältere Clients, insbesondere PHP-Versionen, einhergeht. Konkret setzen wir im Rahmen des Upgrades folgende Parameter in der MySQL-Konfiguration explizit:

    Code
    default_authentication_plugin = mysql_native_password
    collation-server = latin1_swedish_ci
    character-set-server = latin1

    Damit konnte in unseren Tests mit jeder PHP-Version die wir getestet haben (ab PHP 5.6), erfolgreich eine Verbindung zum MySQL-Server aufgebaut werden.


    Ich wünsche noch ein schönes Wochenende :)

  • Nur als Nebenbemerkung: Die derzeit aktuellste MySQL-Version für Plesk Obsidian v18x ist unter Red Hat Enterprise Linux 8.4 laut der Abfrage yum info mysql-server.x86_64 folgende Version:

    • Offizieller Beitrag

    Hallo andreas.,



    wir beziehen unsere Version direkt aus den von MySQL selbst bereitgestellten Paketquellen, daher steht uns dort die neueste veröffentlichte Version zur Verfügung.

  • Ich hab hier leider ein kleines Problem, das ich als halbwegs Wissender leider so nicht lösen kann. Ich betreibe seit kurz nach Anfang des Jahres einen Shop (JTL Shop 5) auf einem Webhosting. Ich finde schön dass generell die Aktualität der Software im Auge behalten wird, unschön ist aber die Informationskette.
    Ich Arbeite Vollzeit und der Shop ist Nebenarbeit nach der initialen Konfiguration (daher auch einen Webhosting Tarif), da Fällt nicht so viel Zeit raus, das eben mal schnell umzubauen und zu testen und ... ihr wisst was ich meine.


    Ich habe noch einen VPS der sollte ausreichen um die Zeit zu überbrücken bis mein Shop wirklich läuft mit MYSQL8. Leider bin ich mit meinem Halbwissen wenig in der Lage wie ich meinen Shop nun mit meinem VPS verbinden soll bzw wie ich die MYSQL aus dem Netz sicher errichbar machen kann, insofern ich das überhaupt kann.

    Hilfe wäre mir hier sehr willkommen.

  • bis mein Shop wirklich läuft mit MYSQL8.

    Bist Du dir denn sicher, dass er es nicht tun wird? Es ist wirklich relativ unwahrscheinlich, dass da etwas kaputt geht. Denn MySQL/MariaDB ist eigentlich sehr stabil und macht wenig bis nachts bei Versionssprüngen kaputt.


    Ansonsten könntest Du einen Auftrag im Job Unterforum posten. Gibt genug Menschen hier, die Ihre Brötchen damit verdienen oder auch mal so aus Spaß gerne helfen. :)

  • perryflynn Danke für den Hinweis ins Job Unterforum.


    Ja ich bin mir sehr sicher, da ich schon einige PRobleme im JTL Forum gesehen habe was die Administration angeht.

    In MySQL8 sind wohl reservierte Wörter dazu gekommen und scheinbar ist die Software nicht ganz so "neutral" was den SQL Slang angeht gecodet worden.


    Ich hab aktuell noch ein wenig Zeit aber die Aktion ist alles andere als cool.

  • Die sichere Konfiguration eines von "außen erreichbaren" SQL Servers ist zwar kein Ding der Unmöglichkeit, jedoch auch nicht wirklich etwas, was ich einem Laien empfehlen würde.


    Grundsätzlich solltest du starke Passwörter verwenden, den Zugang des Users root auf localhost beschränken und deinen Datenbankbenutzern die wirklich notwendigen Privilegien geben.


    Noch besser wäre es wenn du Verschlüsselung und eine vernünftige Firewall nutzt.


    Es ist kein Ding der Unmöglichkeit, jedoch denke ich zumindest, dass der Aufwand die ganze Seite temporär auf den VPS umzuziehen weniger Arbeit und vor allem sicherer ist, anstatt sich da durch die Konfiguration von MySQL zu wursteln.

  • Ich würd die Zeit lieber nutzen den Shop auf einen (Test)-Server mit Mysql 8 zu kopieren und zu schauen ob wirklich was wichtiges nicht funktioniert. Wenn ja: Issue melden auf github.


    Bereits im Juli wurden hier schon Fixes für mysql 8 eingebaut, wenn du diese in deiner aktuellen Version hast (also wenn das schon released ist und du upgedated hast) sollte wohl das meiste/wichtigste funktionieren: https://gitlab.com/jtl-softwar…ore/-/merge_requests/2041


    Notfalls kann ich dir dealbreaker auch noch von Hand wegpatchen. Weißt du schon wann dein Webhosting mysql 8 bekommen wird?


    Achja: Ein extra mysql 5 System geht auch, ist aber halt ein Rückschritt. Lieber jetzt einmal in den sauren Apfel beißen!

  • Wie x1lor sagt, ist es nicht, dass ich hier einen eventuell funktionierenden Shop habe, sondern dass ich definitiv einen nicht funktionierenden Shop habe.
    Der Umzug auf den VPS komplett wäre eine Idee, hier muss ich mich aber dann auch wieder mit viel Struktur auseinandersetzen (wie bereits gesagt, gesundes Halbwissen hab ich ja aber ihr wisst ja selbst wie gefährlich das immer ist).

    Ich habe auf meinem VPS aktuell die UFW laufen und einen MySQL 5.7. Root darf nur von Localhost und Connection darf nur vom Server des Shops gemacht werden (via bind-address=<Shop DNS>).
    Bisher hab ich aber noch keine DB überspielt.

    Einen Testserver zu machen und ein Backup einzuspielen ist keine so leichte Sache bei JTL wenn ich mich nicht täusche. Ich könnt mich aber mal daran versuchen.


    x1lor hat mir freundlicherweise Hilfe angeboten (ich schick dir heute Abend eine PN)

    • Offizieller Beitrag

    Hallo SD2,


    die Upgrades für den heutigen Tag werden auf einen zukünftigen Zeitpunkt verschoben, diese Möglichkeit haben wir uns in unserer Ankündigung bewusst offen gelassen:

    Zitat

    [...] dass es desweiteren möglich ist, dass Upgrades ggf. auf einen späteren Zeitpunkt verschoben werden müssen (in diesem Fall erhalten Sie von uns eine erneute Terminankündigung)


    Wir haben bereits in den letzten Tagen einige Upgrades erfolgreich durchgeführt, sind allerdings noch dabei, den Prozess weiter zu optimieren, insbesondere, um die Ausfallzeit während des Vorgangs zu verkürzen. Um nötige Tests und anschließend Optimierungen durchführen zu können, haben wir die MySQL-Upgrades nun temporär pausiert. Betroffene Kunden erhalten in der Zukunft eine erneute Terminankündigung per E-Mail.