Ich habe das Migrationstool nicht hochgelobt, sondern lediglich dessen Existenz erwähnt um auf die Absenz eines vergleichbaren Angebots für systeminterne Migrationen hinzuweisen.
Und “einfach darauf hören was man mir sagt” … also sag mal Jungchen, geht’s eigentlich noch? Wer bist denn du überhaupt, dass du dir eine solche Arroganz erlaubst. Ich glaub, es hakt.
Jetzt kommt bitte wieder zurück auf den Boden, sonst werde ich diesen Thread schließen. Ich denke jeder hat seinen Standpunkt klar gemacht.
Fakt ist: Aktuell muss man die Übernahme der Daten händisch machen. In der Regel wird dies typischerweise so gemacht, dass bei einem Livegang die Datenbank des Liveshops aktualisiert wird und dann die relevanten Bereiche (bspw. Bestellungen, Kunden) von der aktualisierten Livedatenbank in die neue Update-Datenbank kopiert werden. Das geht über PHPmyAdmin bspw. (Tabellen exportieren, Tabellen im Ziel löschen, Tabellen importieren, Foreign Keys prüfen).
Unabhängig davon, ob jemand gerne einen anderen Weg will, ist das der aktuelle Weg den man gehen muss. Kurzfristig gibt es hier keine andere Lösung, denn selbst wenn das Ticket bei ausreichenden Votes eingeplant wird, sind wir sicherlich ein paar Monate weiter.
In der Regel wird dies typischerweise so gemacht, dass bei einem Livegang die Datenbank des Liveshops aktualisiert wird und dann die relevanten Bereiche (bspw. Bestellungen, Kunden) von der aktualisierten Livedatenbank in die neue Update-Datenbank kopiert werden. Das geht über PHPmyAdmin bspw. (Tabellen exportieren, Tabellen im Ziel löschen, Tabellen importieren, Foreign Keys prüfen).
Dieses Vorgehen hat der Support mir nicht vorgeschlagen. Dort wurde mir geraten, alles im Live-System nocheinmal zu machen, um es auf den Stand des Testsystems zu bringen. Daten-Übertrag ins Testsystem sei nicht möglich. Zitat aus dem Ticket: "Der beste Weg ist es, die Aktualisierung des Shops / der Plugins Schritt für Schritt in der Testumgebung zu dokumentieren, um diese Liste dann nachträglich auch im Liveshop abarbeiten zu können. Hintergrund: Da es sehr viele Tabellen gibt, die voneinander abhängig sind, empfehlen wir es nicht, diese nachträglich von einer Datenbank in die andere einzufügen, da hier sehr viele Inkonsistenzen und weitere Probleme entstehen können. "
Geht’s doch anders? Nur damit ich deinen Vorschlag richtig verstehe: Live-System nur auf gleichen Systemstand upgraden, ansonsten keine Arbeiten darin vornehmen, keine Anpassungen, keine Plugins installieren. Dann kann ich Datenbank-Tabellen ins vollständig konfigurierte und vorbereitete Test-System übertragen und erspare mir den Aufwand, alles an Konfigurationen im Live-System nochmal durchexerzieren zu müssen?
Naja, du musst halt wissen was du machst. Das was der Support empfohlen hat, ist die sichere Methode.
Das was ich empfohlen habe, erfordert zumindest ein Grundwissen im Umgang mit Datenbanken und der Struktur der Shopware-Datenbank. Wenn du bspw. ein Plugin aktualisiert in der Update-Umgebung, was irgendwas an den Bestelldaten verändert und du nimmst dann die Tabelle aus dem Live rüber, ist natürlich ein potentieller Fehler da. In einer Standardinstallation kann man das so machen wie ich beschrieben habe. In einer Custom Installation musst du schon ganz genau wissen, ob es noch weitere abhängigkeiten gibt. Beispiel:
Bestelldaten übernehmen (s_order_*)
Plugin hat eine eigene Tabelle mit einer Beziehung zwischen Bestellung und Order
Plugin nutzt ein Order_Attribut um Daten zu speichern
Das Plugin hat nun beim Update etwas an seiner eigenen Struktur geändert. In diesem Momen lassen sich die Daten nicht “einfach” von Live in das Update-System übernehmen. Dafür muss man ganz speziell wissen, ob es weitere Abhängigkeiten im System gibt. Das gleiche Problem birgt auch immer ein einfacher Import. Shopware kann die eigenen Daten gut “haushalten”, Plugins müssten dann auch dafür sorgen, dass die Import-Daten entsprechend verarbeitet werden. Das ist aber durchaus gängige Praxis bei Agenturen bei einem Livegang.
Kann man ja auch gut in zwei Testumgebungen durchspielen um es mal zu testen.