Euer Shop ist noch auf einer älteren Version und nun gibt es ein wichtiges Sicherheitsupdate.
Jetzt denkt man sich, dann klicke ich einfach auf "Update starten" und alles wird gut.
Doch das muss nicht immer der Fall sein, ganz im Gegenteil erleben wir oft, dass es dann zu Problemen kommt.
Wir erklären heute wie ihr Euch für den Problemfall vorbereitet.
Bevor Ihr ein Update durchführt empfehlen wir das Update auf einer Staging Umgebung zu testen.
Wir können das Update über das Shopware Backend machen, dort müssen wir nur den Knopf "Update starten" drücken und das Backend übernimmt das Update für uns.
Doch hier gibt es z. B. die Fehlermeldung "0 - Communication Failure", die entsteht, wenn es einen PHP-Timeout gibt oder die Verbindung zur Datenbank unterbrochen wurde.
Aus diesen Gründen nutzen wir gerne die Konsole, um unser Update zu machen.
Das Erste, was mir immer machen, ist ein Backup von den Shopdateien und der Datenbank zu erstellen.
Zuerst machen wir ein Backup von unseren Shop Dateien.
ssh username@server
Bsp. ssh root@192.168.1.1
Die Frage "Are you sure you want to continue connecting (yes/no)?"
Beantworten wir mit yes.
Nun müssen wir in das Verzeichnis wo unser Shop liegt, in unserem Beispiel müssen wir in den "web" Ordner.
cd web
Hier finden wir nun unseren Shop, den wir in ein komprimiertes Archiv packen wollen.
tar -czf Backup_UnserShop_24_10_16.tar.gz .
*UPDATE*
Hier noch ein Beispiel wie Ihr Euren Shop ohne Cache packen könnt.
tar --exclude='./var/cache/production_*' -czf Backup_UnserShop_24_10_16.tar.gz .
Anschließend machen wir noch ein Backup von unserer Datenbank.
mysqldump -u root -h localhost -p shopwaredb511 > Backup_DB_24_10_16.sql
Der Befehl: mysqldump -u username -h host_address -p database_name > Backup_DB_24_10_16.sql
Wenn alles gesichert ist, können wir unser eigentliches Update starten.
Als Erstes loggen wir uns in das Backend unseres Shopware Shops ein und sehen dann schon oben rechts die Meldung, dass eine neue Version verfügbar ist.
Wenn wir auf Details klicken, kommen wir auf eine Übersicht wo wir prüfen können, ob wir den Voraussetzungen entsprechen und unsere Plugins mit der neuen Version kompatibel sind.
Sofern alles passt, müssen wir nur noch bestätigen, dass wir ein Backup erstellt haben und klicken nur noch auf "Update starten".
Im Normalfall erscheint dann eine Übersicht, wie wir sie von der Installation kennen. Dort klicken wir uns durch schon ist das Update fertig.
Wir müssen wieder in unsere Konsole und fangen damit an, die neueste Shopware-Update Version zu laden (5.2.9, Stand 24.10.16)
wget http://releases.s3.shopware.com.s3.amazonaws.com/update_5.2.9_e9b9cb9cf54d4c83855d42e30be03f4968000b1d.zip
Solltet Ihr unzip noch nicht installiert haben, könnt Ihr das nachholen:
apt-get install unzip
unzip update_5.2.9_e9b9cb9cf54d4c83855d42e30be03f4968000b1d.zip
Hier bestätigen wir mit "A", damit alle Dateien überschrieben werden.
Jetzt starten wir das Update über die Konsole mit diesem Befehl und bestätigen dann mit "Enter":
php recovery/update/index.php
Das Verzeichnis "/update-assets" muss noch gelöscht werden.
rm -r update-assets
Wenn das Update erfolgreich war, können wir uns ins Backend einloggen und löschen den Cache unter "Einstellungen > Caches/Performance > Cache > Alle auswählen > Leeren".
Schon ist unser Shop up2date und erreichbar.
Sollte es doch Probleme geben, können wir einfach unser Backup aufrufen.
Du hast Probleme bei dem Update Deines Shops? Wir können Dir als Shopware Agentur helfen! Kontaktier uns einfach!
Unsere Standorte
Zentrale
Technologiepark 23
33100 Paderborn
Leipzig
Bernhardstraße 34
04315 Leipzig
Kontakt
E-Mail: support@8mylez.com
Telefon: +49 (0) 5251 284 710
Shopware Dienstleistungen
Über 8mylez
✓ 38 Mitarbeiter
✓ Shopware Gold Partner
✓ 40.000+ Plugin Downloads
✓ 160+ betreute Shops
✓ Full-Service Shopware Agentur
✓ 70 Shopware Videos auf Youtube
✓ Alle Shopware Zertifizierungen
Social
Carsten
Alexander Wolf
leider passen die Screenshots da nicht mehr zu. Aber es ist sehr ähnlich. Das Backup vorher kannst du genauso erstellen. Nur für das Update musst du in der Administration zur Update Seite. Die findest du unter Einstellungen > System > Shopware-Update.
Viel Erfolg!
Steffen Rössler
Ich habe mir erlaubt, eurern Beitrag zu verlinken da hier schon alles steht.
wienerpresswerk.at/shopware-update-sicher-durchfuehren/
Ich hoffe, daß ist ok für euch!
LG
Steffen
Alexander Wolf
passt! Danke für die Verlinkung :)
Gruß
Alexander
Stefan
schonmal vielen Dank für die Beschreibung. Deine Schritte konnte ich gut nachvollziehen, nur erscheint nach dem Befehl "php recovery/update/index.php" folgende Meldung in der Konsole:
Replace system files...
skipped...
Apply database migrations...
Could not find shopware config
habe ich bei der Ausführung etwas falsch gemacht (Update auf 5.5.10 mit der Datei vom Shopware Changelog)?
Alexander Wolf
schwierig den Fehler direkt zu finden.
Aber du kannst den Link zu der index.php auch im Browser aufrufen und da einmal testen ob alles passt. https://meinshop.de/recovery/update/index.php
Gruß
Alexander
Atilla
Langsam bin ich dann durch mit dem Shell ABC, mindestens die Hälfte hab ich hier gelernt ;)
Grüße aus Kölle
Atilla Boz
Da bin ich wieder. Kurze Frage zu dieser Zeile hier:
tar --exclude='./var/cache/production_*' -czf Backup_UnserShop_24_10_16.tar.gz .
Wenn man das so eingibt, heißt das dann, dass der ganze Inhalt des Ordners ausgeschlossen wird, oder wird er Ordner selbst ausgeschlossen?
Die Frage ist eigentlich also, wenn ich es aus irgend einem Grund nicht hinbekomme den cache auf diese Weise auszuschließen, welche Ordner ich später auf der neuen Installation löschen müsste.
Beste Grüße aus Köln,
Atilla
Ewald Gering
mit dem Befehl werden alle Cache Ordner mit dem Namen 'Production_*' ausgeschlossen. Also wird der gesamte Cache Ordner ausgeschlossen.
Beste Grüße
Ewald
Michael
Alexander Wolf
leider nicht. Wenn es Aenderungen an den Core Dateien gab, bekommst du diese gar nicht mit. Im update-assets Ordner sind nur die Migrationen fuer die Datenbank.
Daher wuerden dir die neuen Dateien fehlen.
Gruß
Alexander
Winny
eines ist noch wichtig und sehr ärgerlich anzumerken. Ein update über das Backend geht nur wenn man im Jahr 588,00 Netto für das Software-Subscriptions an Shopware bezahlt hast. Ist das nicht der Fall , verweigert der Update seine Arbeit mit einer Fehlermeldung.
Also ehrlich ist doch Grass, da legt man schon 1295 Euro Netto hin und dann das.
Aber ok.. andere Baustelle....
gruss Winny
Ewald Gering
ja der Auto-Updater geht nur mit einer aktiven Subscription von Shopware. Das heißt wenn man einmal eine Shopware Lizenz erworben hat muss man diese immer verlängern für den Updater. Wenn man nur die Community Version nutzt geht dieser normal.
Zum Glück gibt es aber noch andere Möglichkeiten wie z.B. per Konsole.
Viele Grüße
Ewald
Micha
Hier könnt ihr schnell eine Liste aller Änderungen Drucker oder per CSV exportieren.
Alexander Wolf
vielen Dank für den tollen Link!
Gruß
Alexander
Anna
Shop erstellst und verwaltest" noch ?
Ich wollte mich grad dafür anmelden, aber dann komme ich nur auf eine Seite mit der Fehlermeldung: 404 - page not found
Marc Baur
danke für den Hinweis - die Weiterleitung funktioniert nun wieder. Du solltest aber unabhängig davon eine E-Mail im Posteingang (oder vielleicht im Spam-Fach?) finden.
Wenn Du diese bestätigst, dann beginnt der Kurs.
Herzliche Grüße
Marc
Atilla Boz
Ewald Gering
viele Hoster bieten die Möglichkeit an automatische Backups zu erstellen und auch manuell anzulegen. Ein Plugin welches diese Funktion beinhaltet ist mir nicht bekannt.
Viele Grüße
Ewald
Mario
tar --exclude='./var/cache/production_*' -czf Backup_UnserShop_24_10_16.tar.gz .
Kommt folgende Meldung:
tar: invalid option -- '▒'
Try 'tar --help' or 'tar --usage' for more information.
Ewald Gering
der Befehl ist richtig. Evtl. hast du in der Konsole einfach ein Leerzeichen zu viel?
Auf welchem System testest du den Befehl?
Viele Grüße
Ewald
Erik
"ERROR: SQLSTATE[HY000] [2002] No such file or directory"
Eine Idee woran das liegt? Btw. sehr simples und gut strukturiertes Tutorial :-)
Ewald Gering
vielen Dank für die netten Worte.
Trat der Fehler beim mysqldump auf? Wenn ja, probier mal statt localhost die IP 127.0.0.1 zu verwenden.
Viele Grüße
Ewald
Mario
"0 - Communication Failure"
Diese Meldung kommt bei mir leider sehr oft.. könnt ihr eventuell erklären warum das passiert und was man dagegen tun kann?
Frage 2:
"tar -czf Backup_UnserShop_24_10_16.tar.gz ." Kann man auch sagen das es den Cache Ordner nicht komprimieren soll? Der ist ja eigentlich unnötig oder?
Grüße
Ewald Gering
1. Das liegt daran, dass PHP-Scripte auf den meisten Servern maximal 30 oder 60 Sekunden laufen dürfen und so ein Update Check gerne mal länger dauern kann. Dagegen kann man die Laufzeit verlängern https://php.net/manual/de/function.set-time-limit.php, was man aber nach dem Update wieder zurück stellen sollte.
Sonst könnten ja fehlerhafte Script lange laufen und unnötig Ressourcen verbrauchen.
2. Rein theoretisch ja, praktisch sollte man es lieber lassen. Es kommt gerne mal zu Veränderungen der Rechte wenn der Ordner fehlt. Wenn das Verzeichnis sehr groß ist kann man als Alternative die "production_" Ordner vor dem Komprimieren löschen.
Viele Grüße,
Ewald
Was denkst du?