Daten Migration Magento 1.9 nach Shopware 6.6.10

Hi,

ich versuche gerade mit der aktuellsten Shopware Version 6.6.10 und dem aktuellsten Migration Assistant + Magento Profile eine Datenbank Migration von Magento 1.9 nach Shopware zu bewerkstelligen.

Der Prozess läuft eine Zeit lang und wird erfolgreich abgeschlossen, aber es werden überhaupt gar keine Daten übernommen.

Das hatte in einer früheren Version mal funktioniert, aber die funktioniert nicht mehr mit der aktuellen Shopware Version.

Hat hier irgendjemand Erfahrung damit und könnte helfen?

Es ist zum verzweifeln…

Tauchen denn in den swag_migration-Tabellen irgendwelche Daten auf?

Ja, in den swag_migration* Tabellen tauchen Daten auf. Aber am Ende hab ich weder Produkte, noch Kategorien, Bestellungen oder Kunden. Einfach gar nichts.

Ich kenne mich mit Magento leider nicht aus, aber am Ende einer Migration gibt es immer ein Migrationslog. Das sollte man sich anschauen. Dort stehen bestimmt weitere Hinweise.

Ja, das hab ich auch gerade entdeckt. Offenbar gibt es reichlich Warnings und Errors, vor allem hinsichtlich foreign_key_checks. Diese zu deaktivieren klingt jetzt nicht ganz korrekt, aber ich lass es damit gerade einmal durchlaufen.

Diese Probleme gab es mit den alten Versionen jedenfalls nicht.

Genau das sollte analysiert werden. Die meisten Fehler bassieren auch darauf, weil notwendige Daten (foreign_key) noch nicht angelegt wurden. Fehlen z.B. Versandarten, können Bestellungen und Kunden nicht angelegt werden. Allgemein empfehle ich aber erst einmal mit der Migration der Produkte zu beginnen.


Auch mit deaktivierten foreign_key_checks geht es nicht.

Hier ein Auszug aus dem Log:

[error] SWAG_MIGRATION_RUN_EXCEPTION
An exception occurred
Entity: product, sourceId: 01965cc66dff721bbf4d03d527f516d2
An exception occurred while executing a query: SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`shopware`.`product_visibility`, CONSTRAINT `fk.product_visibility.sales_channel_id` FOREIGN KEY (`sales_channel_id`) REFERENCES `sales_channel` (`id`) ON DELETE CASCADE ON UPDATE CASCADE)```

Macht hier auch kein Sinn und führt auch nicht zum Erfolg.

Nun, Fehler wie „foreign key“ sind Abhängigkeiten. Ein Datensatz kann nur angelegt, wenn deren Voraussetzungen angelegt sind.

Beispiel: Eine Bestellung kann erst angelegt werden, wenn dazu auch der Kunde bereits vorhanden ist. „foreign key“ wäre hier dann die Kunden UUID.

Frage, wurde bei der Migration der Verkaufskanal bzw. Produkte angelegt? Irgendwie scheint hier das Problem zu sein.

Du könntest mit

SET @SourceID = "01965cc66dff721bbf4d03d527f516d2";
SELECT mm.old_identifier, md.entity, md.raw 
FROM swag_migration_mapping mm, swag_migration_data md 
WHERE md.mapping_uuid = mm.id AND mm.id = UNHEX(@SourceID);

oder

SET @DataID = "01965cc66dff721bbf4d03d527f516d2";
SELECT entity, raw FROM swag_migration_data WHERE id = UNHEX(@DataID);

Versuchen das Produkt aus dem Quellsystem zu ermitteln. Schauen ob es mit Stammdaten im Zielsystem angelegt wurde.

Es wurde eben nichts angelegt. Kein Verkaufskanal etc.

Ja dann sind die vielen Fehler auch kein Wunder. Der Verkaufskanal ist eine nötige Grundeinstellung. Weiß nicht ob das im Zusammenhang mit Magento steht.

Das hatte vor einem Jahr mit den älteren Version des Migration Assistant + Magento Profile funktioniert. Jetzt mit der frischen Shopware Version etc. geht einfach nichts mehr.

Ich hab grad nicht die allerneueste Version von Shopware lokal vorliegen, aber in den älteren Versionen gab es einen Reader und einen Converter für SalesChannel, d.h. die wurden von Magento übernommen. Frage ist ja, warum es jetzt nicht mehr geht.