Ein Shopsystem soll mit Shopware 6.6 neu gebaut werden, dabei sollen aber die Kundedaten aus der existierenden Shopware 6.4 Umgebung übertragen werden.
Offenbar kann das die Migrations Erweiterung nicht.
Ein Update von Shopware 6.4 auf Shopware 6.6 ist aufgrund eines Datenbank Fehlers auch nicht möglich.
Hat jemand einen Vorschlag, wie sich das eine oder andere Problem lösen lässt?
An exception occurred while executing 'ALTER TABLE `product` ADD COLUMN `variant_listing_config` JSON GENERATED ALWAYS AS (CASE WHEN `display_parent` IS NOT NULL OR `main_variant_id` IS NOT NULL OR `configurator_group_config` IS NOT NULL THEN (JSON_OBJECT( 'displayParent', `display_parent`, 'mainVariantId', LOWER(HEX(`main_variant_id`)) ,'configuratorGroupConfig', JSON_EXTRACT(`configurator_group_config`, '$'))) END) VIRTUAL': SQLSTATE[HY000]: General error: 1901 Function or expression 'variant_listing_config' cannot be used in the CHECK clause of `variant_listing_config`
Please try to fix this error and restart the update.
Hallo @Patrick_Muenster ,
ich, glaube das es derselbe Fehler war, hatte diesen Fehler neulich auch bei einem Kundenprojekt gehabt:
Da gibts mit dem Update ein Problem wenn du deine Datenbank als mariaDB hast und nicht MySQL.
Viele Grüße
Marco Schäfer
Danke für die Antwort,
das habe ich auch aufgeschnappt.
Heißt dass, ich müsste das gesamte System auf einen Server mit MySQL DB kopieren um das Update zu machen? Wie habt ihr das gelöst?
Eigentlich würde ich gerne voll null anfangen, aber irgendwie muss ich die Kundendaten umziehen.
Ich habe auch die Import/Export Funktion bemüht, aber ich erhalte für alle Einträge in der liste Fehler beim Import.
Hi @Patrick_Muenster ,
du müsstest das ganze auf jeden Fall über die Datenbank patchen. Ein Wechsel zu MySQL ist nicht notwendig. Aber ich kann/werde dir jetzt nicht blind die Befehle der Seite auf gut Glück nennen → ohne Ausgaben zu sehen … möchte ich nicht riskieren das nachher garnichts mehr geht!
Warum möchtest du von anfangen? Was diesen Fehler betritt ist dies eigtl. nicht unbedingt notwendig - Seitdenn du hast noch weitere schwerwiegenden Probleme im Shop.
–
Wenn du Unterstützung brauchst, egal ob für das neu-beginnen oder den Fehler zu fixen - Dann melde dich gerne bei mir privat, am liebsten per Mail.
–
Viele Grüße
Marco Schäfer
Hi @WebentwicklSchaefer,
ich habe so einen ähnlichen Fehler beim Update von 6.4.20.2 auf 6.5.x.
Ich habe glaube ich schon alles versucht. Update per Installscript, Update per Composer, Neuinstallation und alte Datenbank verknüpft, Migrations-Assistent (der macht aber nur 6.5->6.5, warum auch immer). Am Ende steht aber immer folgender Datenbankfehler:
[PDOException (42S01)]
SQLSTATE[42S01]: Base table or view already exists: 1050 Table ‚language‘ already exists
Ich habe auch schon versucht die Tabelle umzubenennen, dann wird sie beim Updaten einfach wieder angelegt und die Fehlermeldung erscheint wieder.
Hat irgendeiner eine Idee, was ich noch versuchen kann?
MariaDB 10.11
PHP 8.2
Projekt läuft auf einem eigenen Managed
Hallo @unikatgmbh,
ich glaube den Fehler hatte ich auch mal bei einem Update - weiß aber die Lösung nicht mehr auswendig (ist eine Weile her). Müsste also an der Stelle auch debuggen und eine Lösung suchen.
Viele Grüße
Marco Schäfer
Wir haben das gerade gemacht - bei uns war aber der Auslöser das wir die templates neu machen wollten und Verknüpfungen im Server alle entfernen wollten von der vorigen agentur das hatte eher typo Style
Also wurde das Projekt bereinigt in einer Etage hoch geupdatet und dann eine parallel installierte Version drüber geschoben und nur Medien erhalten Plugins usw neu und db bereinigt
In eurem Fall würde ich pragmatisch ran gehen und eine frische 6.4 mit der selben Version. Aufsetzen und nur die dB Tabellen rüber ziehen die relevant sind und dann das System updaten auf 6.6
Oder in einer Stage direkt auf 6.6 updaten und dann migrieren in die neue - von 6.6 auf 6.6 geht nämlich mit den migrationstool
Da wirst dann sicher aber andere Fehler bekommen die man bereinigen sollte im live damit das ganze später immer zum Switch ohne Stress reproduzierbar ist
Ich denke der Part mit der DB ins neue und hoch updaten ist der einfachste
Dann müsst ihr zum Live Switch nur einmal den Schritt neu machen und dann in die Stage rüber schieben und live stellen.
Ansonsten bleibt dir nur ein eigenes Migrationstool
LG René
1 „Gefällt mir“