Migrationsprozess - Shopware 5

Migration vorbereiten

Erweiterungs Installation

Nachdem Du Shopware 6 auf Deinem Server erfolgreich installiert hast, kannst Du mit der Migration von Deinem Shopware 5 Shop beginnen. Hierzu benötigst Du zunächst die Erweiterung SwagMigrationAssistent für Shopware 6, welches Du aus dem Community Store erhälst.
Zudem ist es notwendig in Deinem Shopware 5 Shop, aus welchem Du migrieren möchtest die Erweiterung SwagMigrationConnector zu installieren.

Die nachfolgende Beschreibung des Migrationsprozesses bezieht sich auf den Migrationsassistenten ab Version 13.0.0 der Erweiterung.

Verbindung herstellen

Damit Du Deine Daten aus Showare 5 in Deinen Shopware 6 Shop migrieren kannst, muss zunächst eine Verbindung zu Deinem bisherigen Shopware 5 Shop hergestellt werden. Dies startest Du in der Shopware 6 Administration unter dem Menüpunkt Einstellungen > Erweiterungen > Migration
Solange diese Verbindung zu Deinem Shopware 5 Shop besteht, kannst Du jederzeit Daten aus dem Shopware 5 Shop migrieren. 
 

Klicke dann auf Verbindung anlegen um eine neue Verbindung anzulegen.


Name: Hier gibst Du zunächst einen eindeutigen Namen für die Verbindung an. Dies ist vor allem dann notwendig, wenn du eventuell zu mehreren Shopware 5 Shops eine Verbindung aufbauen möchtest. 

Bitte verwende keine Bindestriche im Verbindungsnamen. Die Freitextfelder aus Shopware 5 werden in Shopware 6 als Zusatzfelder mit dem Verbindungsnamen übernommen. Wenn ein Bindestrich vorhanden ist, sorgt dies dafür, dass die Zusatzfelder nicht mehr korrekt in der Storefront dargestellt werden.

Profil: Bezeichnet die Art des Quellsystems. Im Standard wird für die Migration Shopware55 ausgewählt. Drittanbieter können aber auch mit anderen Profilen arbeiten. 
Schnittstelle: Bezeichnet die Art der Verbindung zwischen den beiden Systemen. Hier wählst Du API, wenn Du einen entfernten Shop migrieren möchtest, oder Local, wenn sich der zu migrierende Shop auf dem gleichen Server befindet. 


Verbindung bearbeiten

Je nach Schnittstelle, die Du im letzten Schritt gewählt hast, erhälst Du nun eine der folgenden Beiden Abfragen.


API:
 

API-Schlüssel: Hier trägst Du den API Schlüssel Deines Shopware 5 Benutzers ein. Wenn noch keiner angelegt wurde, kannst Du dies in der Benutzerverwaltung von Shopware 5 nachholen. 
Benutzername: Hier trägst Du den Benutzernamen Deines Administrators aus Shopware 5 ein. Dies muss der Benutzer sein, für den der o.a. API-Schlüssel zugeordnet wurde. Wichtig ist, dass dieser Benutzer in der Gruppe "local_admins" sein muss. 
Shopdomain: Trage hier die Domain deines Hauptshops ein. Achte darauf, anzugeben, ob der Shop eine sichere SSL Verbindung verwendet.



Local:
 

DB-Host: Trage hier die Host URL Deiner Datenbank ein. Wenn die Datenbank auf dem selben Server installiert ist, kannst Du hier auch localhost eingeben.
DB-Port: Trage hier den Standard Port Deiner Datenbank ein. In der Regel ist dies standardmäßig 3306.
DB-Benutzer: Gebe hier einen Datenbank Benutzer mit Administrationsrechten an. 
DB-Passwort: Gebe hier das Passwort zu dem oben angegebenen Datenbank Benutzer an.
DB-Name: Hier trägst Du den Datenbank Namen der Datenbank ein, welche die Daten Deiner Shopware 5 Installation beinhaltet. 
Root Verzeichnis: Trage hier den absoluten Pfad zu dem Verzeichnis an, in dem Shopware 5 installiert wurde.

 

Meta Daten anpassen

Im Rahmen der Migration wird es dazu kommen, dass einige Metadaten gekürzt werden, da sich der Datenbank Typ von mediumtext auf varchar(255) ändern wird. Diese Werte werden somit nach 255 Zeichen abgeschnitten. 
Folgende Werte sind davon Betroffen: 
 

TabelleSpalten
s_articlesdescription
s_categoriesmetadescription
metakeywords


 

 

Migrationsdaten kontrollieren

Nachdem Du alle notwendigen Angaben Deiner Verbindung gemacht hast, wirst Du zur Migrationsübersicht weiter geleitet. Hier hast Du eine Übersicht über die aktuelle Verbindung, kannst wählen, welche Daten migriert werden und Deine bisherigen Migrationen verfolgen. 


Übersicht

Nachdem Du die Verbindung erfolgreich aufgebaut hast, gelangst Du automatisch zur Übersicht der Migration. Hier siehst Du, zu welchem Shopsystem (1) Du aktuell eine Verbindung aufgebaut hast. Zu der Verbindung kannst Du auch gleich einsehen, welches System-Profil und welche Schnittstelle verwendet wurde, wann der letzte Verbindungscheck durchgeführt wurde und wann mit dieser Verbindung die letzte Migration durchgeführt wurde. Über den Button Verbindung bearbeiten (2) kannst Du Änderungen an der aktuellen Verbindung vornehmen.
Über das Dropdown Menü (3) kannst Du eine neue Verbindung anlegen, die Zugangsdaten der aktuellen Verbindung löschen oder zu einer anderen angelegten Verbindung zu wechseln. Außerdem lässt sich über dieses Dropdown Menü die Prüfsummen zurücksetzen.

Mit der Reload-Schaltfläche (4) wird die Übersicht der Migration neu geladen. Somit muss nicht die komplette Seite im Browser neu geladen werden, um eine aktualisierte Anzeige der Daten zu bekommen.   

Datenauswahl

In der Datenauswahl entscheidest Du, welche Daten Du aus Deiner Verbindung in den Shopware 6 Shop migrieren möchtest. Hierzu setzt Du einfach den Haken bei den entsprechenden Daten, die migriert werden sollen. Die Liste zeigt Dir außerdem, ob es sich um Shopdaten oder Erweiterungsdaten handelt und wie viele Datensätze migriert werden.

Datencheck

Die Migration führt nun direkt bei der Auswahl der zu migrierenden Daten einen Datencheck durch. Hierbei wird überprüft, ob Daten aus dem alten Shop dem neuen zugeordnet werden können.

Wenn Daten, wie beispielsweise die Standard Zahlungsart, nicht korrekt zugeordnet werden konnten, ist es notwendig diese manuell zuzuordnen. Sobald Du alle nicht zugeordneten Daten manuell zugeordnet hast, kannst Du die Migration über den Button Fortfahren fortsetzen. Wenn alle Daten ohne Probleme zugeordnet werden konnten ist keine manuelle Zuordnung mehr notwendig. In diesem Fall kannst Du die Migration sofort fortfahren.

Die von Dir durchgeführte Zuordnung kannst Du mit einem Klick auf "Durchgeführte Zuordnung anzeigen" ansehen. Diese wird dann unterhalb der manuellen Zuordnung angezeigt.

In den durchgeführten Zuordnungen kannst Du kontrollieren, ob die automatisch zugeordneten Daten korrekt zugeordnet wurden. Hier kannst Du auch nachträglich Deine Zuordnungen ändern oder auch die automatischen Zuordnungen nachträglich ändern. 

Erweiterungen: Daten, die aus Erweiterungen von Drittanbietern migriert werden können, werden in dieser Liste mit dem Typ Plugindaten angezeigt.
Unter Umständen bieten einige Drittanbieter auch ein eigenes Migrationsprofil für Ihre Erweiterungs Daten an, welches dann zur Migration verwendet werden muss. In diesem Fall erhältst Du alle Informationen zur Migration von dem entsprechenden Anbieter.

Historie

In der Historie hast Du die Möglichkeit, dir alle bisherigen Migrationen und Migrationsversuche anzusehen. Hierbei werden die sämtliche Informationen der Migrationen angezeigt. 

Migration durchführen

Wenn Du den Admin-Worker zur Abarbeitung der Aufgaben nutzt, musst Du während des Migrationsvorganges den Tab, in dem die Migration gestartet wurde, bis zum Abschluss der Migration geöffnet lassen, da es sonst zu einem Abbruch der Migration kommen kann. Wir empfehlen im Produktivsystem den Einsatz des CLI-Workers anstelle des Admin-Workers.


Nach dem Du auf Migration starten geklickt hast, wird die Migration in fünf Schritten durchgeführt: Lesen der Daten, Schreiben der Daten, Medien Download, Aufräumen und Indexierung.

Lesen der Daten

In diesem Schritt werden alle Daten aus dem Quell-Shop gelesen, die migriert werden sollen. 
Alle gelesenen Daten erhalten eine Checksumme, mit der bei späteren Migrationen überprüft wird, ob die Daten schon mal migriert wurde. Alle unveränderten Daten werden somit nicht erneut migriert. 

Sollte es dazu kommen, dass Daten nicht migriert werden, obwohl sie sich geändert haben, können die Checksummen zurückgesetzt werden. Näheres dazu erfährst Du im Bereich Migration erneut durchführen.


Schreiben der Daten

Die gelesenen Daten werden nun in Shopware 6 geschrieben. Dabei werden Kundengruppen, Kategorien, Sprachen, Währungen und Verkaufskanäle in diesem Schritt, wenn noch nicht vorhanden, automatisch in Shopware 6 angelegt.


Medien Download

In diesem Schritt werden alle Mediadateien aus der alten Shopware 5 Installation heruntergeladen und in die Shopware 6 Medienverwaltung geladen. 

Aufräumen

Bei diesem Schritt werden die geschriebenen Datensätze aus der Datenbanktabelle swag_migration_data gelöscht, welche zuvor zwischengespeichert wurden.

Indexierung

Hierbei werden alle Indexer erneut angestoßen, sodass die migrierten Daten auch von Shopware indexiert werden.

Logbuch

Der Migrations-Assistent ist nun fertig und es erscheint das Logbuch.

Das Logbuch ermöglicht Dir nach der Durchführung der Migration einen schnellen Blick auf mögliche Fehler, Warnungen und Informationen. Wenn Du unten auf den Link "lade das Protokoll herunter." klickst, kannst Du Dir das gesamte Protokoll der Migration herunterladen.

Wenn Du zur Übersicht zurückkehrst, kannst Du Dir das Logbuch auch noch über den Punkt Historie erledigen.

Migration über die Konsole

Wenn Du die Schritte Lesen der Daten, Schreiben der Daten, Medien Download, Aufräumen und Indexierung bereits durchgeführt hast, kannst Du diesen Punkt überspringen.


Die Migration lässt sich nach dem Schritt Datencheck auch über die Konsole (CLI) starten. 

Wichtig ist, dass Du die Migration zunächst normal über die Administration startest und nach dem Schritt Datencheck abbrichst. 
Navigiere dann in der Konsole in Dein Shopware 6 Verzeichnis. Du solltest Dich jetzt oberhalb des Ordners public befinden.

 

Führe hier folgenden Befehl aus:

php bin/console migration:start Argument

Die Variable Argument kann folgende Werte enthalten: 
 

basicSettingsGrundeinstellungen und Kategorien (SalesChannel Anlage etc.)
Wird automatisch beim Import anderer DataSelections ausgeführt.
customersOrdersAlle Kunden, Bestellungen und Dokumente.
mediaAlle Medien und Ordner.
newsletterRecipientNewsletter-Empfänger
productsAlle Produktdaten und dazugehörigen Entitäten. Ebenfalls dazugehörige Entitäten aus "media".
productReviewsProduktbewertungen
promotionsRabatte & Aktionen
seoUrlsSEO URLs
customerWishlistsMerklisten

Möchtest Du die Migration abbrechen, kannst Du den Befehl php bin/console migration:abort anwenden. Für eine Anzeige des Fortschritts kannst Du den Befehl php bin/console migration:get-progress nutzen. Du kannst Dir den Fortschritt aber auch im Admin ansehen, obwohl Du die Migration über die CLI gestartet hast.


Migration erneut durchführen

Du kannst die Migration beliebig oft erneut durchführen. Bei der ersten Migration erhalten alle migrierten Daten eine Prüfsumme. Anhand dieser Prüfsumme erkennt der Migrations-Assistent, ob Daten migriert werden müssen oder nicht. So wird verhindert, dass Daten doppelt migriert werden und ggf. überschrieben werden. 
Wenn Du eine Migration komplett erneut durchführen möchtest, sodass alle Daten im Zielsystem überschrieben werden, kannst Du die Prüfsummen zurücksetzen. Dies tust Du in der Migrationsübersicht im Bereich Shopsystem über das Dropdownmenü.  

 

War dieser Artikel hilfreich?