Durchführen eines Upgrades
Sie können On-Premise-Bereitstellungen der Adobe Commerce-Anwendung über die Befehlszeile aktualisieren, wenn Sie die Software wie folgt installiert haben:
- Herunterladen des Composer-Metapakets mit dem
composer create-project
. - Installieren des komprimierten Archivs.
- Informationen zu Adobe Commerce in Cloud-Infrastrukturprojekten finden Sie unter Commerce-Version aktualisieren im Cloud-Handbuch.
- Verwenden Sie diese Methode nicht zum Upgrade, wenn Sie das GitHub-Repository geklont haben. Siehe Upgrade einer Git-basierten Installation.
Die folgenden Anweisungen zeigen Ihnen, wie Sie mit dem Composer Package Manager ein Upgrade durchführen. Mit Adobe Commerce 2.4.2 wurde Unterstützung für Composer 2 eingeführt. Wenn Sie versuchen, von <2.4.1 auf eine Version zu aktualisieren, die mit Composer 2 kompatibel ist (z. B. 2.4.2), müssen Sie zunächst Composer 1 vor aktualisieren auf Composer 2 für >2.4.2-Upgrades. Außerdem muss eine (unterstützte Version von PHPwerden.
magento/composer-root-update-plugin
installieren (siehe Voraussetzungen). Darüber hinaus wurden die Befehle zum Aktualisieren von composer require magento/<package_name>
in composer require-commerce magento/<package_name>
geändert.Bevor Sie beginnen
Sie müssen die Upgrade-Voraussetzungen abschließen, um Ihre Umgebung vorzubereiten, bevor Sie den Upgrade-Prozess starten.
Verwalten von Paketen
-
Wechseln Sie in den Wartungsmodus, um den Zugriff auf Ihren Store während des Upgrade-Prozesses zu verhindern.
code language-bash bin/magento maintenance:enable
Siehe Aktivieren oder Deaktivieren des) für zusätzliche Optionen. Optional können Sie eine benutzerdefinierte Wartungsmodusseite“.
-
Das Starten des Upgrade-Prozesses während der Ausführung asynchroner Prozesse, z. B. der Nachrichtenwarteschlange für Verbraucher, kann zu Datenbeschädigungen führen. Um Datenbeschädigungen zu verhindern, deaktivieren Sie alle Cron-Aufträge.
Adobe Commerce auf Cloud-Infrastruktur:
code language-bash ./vendor/bin/ece-tools cron:disable
Magento Open Source:
code language-bash bin/magento cron:remove
-
Starten Sie alle Nachrichtenwarteschlangenbenutzer manuell, um sicherzustellen, dass alle Nachrichten verarbeitet werden.
code language-bash bin/magento cron:run --group=consumers
Warten Sie, bis der Cron-Vorgang abgeschlossen ist. Sie können den Status des Auftrags mit einem Prozess-Viewer überwachen oder indem Sie den
ps aux | grep 'bin/magento queue'
-Befehl mehrmals ausführen, bis alle Prozesse abgeschlossen sind. -
Erstellen Sie eine Sicherung der
composer.json
.code language-bash cp composer.json composer.json.bak
-
Fügen Sie bestimmte Pakete je nach Bedarf hinzu oder entfernen Sie sie.
Wenn Sie beispielsweise ein Upgrade von Magento Open Source auf Adobe Commerce durchführen, entfernen Sie das Magento Open Source-Package.
code language-bash composer remove magento/product-community-edition --no-update
Sie können auch Beispieldaten aktualisieren.
code language-bash composer require <sample data module-1>:<version> ... <sample data module-n>:<version> --no-update
-
Adobe Commerce:
code language-bash composer require magento/module-bundle-sample-data:100.4.* magento/module-widget-sample-data:100.4.* magento/module-theme-sample-data:100.4.* magento/module-catalog-sample-data:100.4.* magento/module-customer-sample-data:100.4.* magento/module-cms-sample-data:100.4.* magento/module-catalog-rule-sample-data:100.4.* magento/module-sales-rule-sample-data:100.4.* magento/module-review-sample-data:100.4.* magento/module-tax-sample-data:100.4.* magento/module-sales-sample-data:100.4.* magento/module-grouped-product-sample-data:100.4.* magento/module-downloadable-sample-data:100.4.* magento/module-msrp-sample-data:100.4.* magento/module-configurable-sample-data:100.4.* magento/module-product-links-sample-data:100.4.* magento/module-wishlist-sample-data:100.4.* magento/module-swatches-sample-data:100.4.* magento/sample-data-media:100.4.* magento/module-offline-shipping-sample-data:100.4.* magento/module-gift-card-sample-data:100.4.* magento/module-customer-balance-sample-data:100.4.* magento/module-target-rule-sample-data:100.4.* magento/module-gift-registry-sample-data:100.4.* magento/module-multiple-wishlist-sample-data:100.4.* --no-update
-
Magento Open Source:
code language-bash composer require magento/module-bundle-sample-data:100.4.* magento/module-widget-sample-data:100.4.* magento/module-theme-sample-data:100.4.* magento/module-catalog-sample-data:100.4.* magento/module-customer-sample-data:100.4.* magento/module-cms-sample-data:100.4.* magento/module-catalog-rule-sample-data:100.4.* magento/module-sales-rule-sample-data:100.4.* magento/module-review-sample-data:100.4.* magento/module-tax-sample-data:100.4.* magento/module-sales-sample-data:100.4.* magento/module-grouped-product-sample-data:100.4.* magento/module-downloadable-sample-data:100.4.* magento/module-msrp-sample-data:100.4.* magento/module-configurable-sample-data:100.4.* magento/module-product-links-sample-data:100.4.* magento/module-wishlist-sample-data:100.4.* magento/module-swatches-sample-data:100.4.* magento/sample-data-media:100.4.* magento/module-offline-shipping-sample-data:100.4.* --no-update
-
-
Aktualisieren Sie Ihre Instanz mithilfe der folgenden
composer require-commerce
-Befehlssyntax:code language-bash composer require-commerce magento/<product> <version> --no-update [--interactive-root-conflicts] [--force-root-updates] [--help]
Zu den Befehlsoptionen gehören:
-
<product>
- (Erforderlich) Das zu aktualisierende Paket. Bei On-Premise-Installationen muss dieser Wert entwederproduct-community-edition
oderproduct-enterprise-edition
sein. -
<version>
- (Erforderlich) Die Adobe Commerce-Version, auf die Sie ein Upgrade durchführen. Beispiel:2.4.3
. -
--no-update
-(Erforderlich) Deaktiviert die automatische Aktualisierung der Abhängigkeiten. -
--interactive-root-conflicts
- (Optional) Ermöglicht die interaktive Anzeige und Aktualisierung veralteter Werte aus früheren Versionen oder benutzerdefinierter Werte, die nicht mit der Version übereinstimmen, auf die Sie ein Upgrade durchführen. -
--force-root-updates
- (Optional) Überschreibt alle im Konflikt stehenden benutzerdefinierten Werte mit den erwarteten Commerce-Werten. -
--help
- (Optional) Enthält Nutzungsdetails zum Plug-in.
Wenn weder
--interactive-root-conflicts
noch--force-root-updates
angegeben sind, behält der Befehl die vorhandenen Werte bei, die in Konflikt stehen, und zeigt eine Warnmeldung an. Weitere Informationen zum Plug-in finden Sie in der README zur Verwendung von Plug-ins. -
-
Aktualisieren Sie die Abhängigkeiten.
code language-bash composer update
Beispiel - Liste der verfügbaren Versionen
So zeigen Sie die vollständige Liste der verfügbaren 2.4.x-Versionen an:
Magento Open Source:
composer show magento/product-community-edition 2.4.* --available | grep -m 1 versions
Adobe Commerce:
composer show magento/product-enterprise-edition 2.4.* --available | grep -m 1 versions
Beispiel - Qualitäts-Patch
Qualitäts-Patches enthalten hauptsächlich funktionale und Sicherheitskorrekturen. Sie können jedoch manchmal neue, abwärtskompatible Funktionen enthalten. Verwenden Sie Composer, um einen Qualitäts-Patch herunterzuladen.
Adobe Commerce:
composer require-commerce magento/product-enterprise-edition 2.4.6 --no-update
Magento Open Source:
composer require-commerce magento/product-community-edition 2.4.6 --no-update
Beispiel - Sicherheits-Patch
Sicherheits-Patches enthalten nur Sicherheitskorrekturen. Sie wurden entwickelt, um den Upgrade-Prozess schneller und einfacher zu machen. Sicherheits-Patches verwenden die Composer-Namenskonvention 2.4.x-px
.
Adobe Commerce:
composer require-commerce magento/product-enterprise-edition 2.4.6-p3 --no-update
Magento Open Source:
composer require-commerce magento/product-community-edition 2.4.6-p3 --no-update
Aktualisieren von Metadaten
-
Aktualisieren Sie die Felder
"name"
,"version"
und"description"
in dercomposer.json
nach Bedarf.note note NOTE Die Aktualisierung der Metadaten in der composer.json
-Datei ist nur oberflächlich, nicht funktionsfähig. -
Aktualisierungen anwenden.
code language-bash composer update
-
Löschen Sie die
var/
undgenerated/
Unterverzeichnisse:code language-bash rm -rf var/cache/*
code language-bash rm -rf var/page_cache/*
code language-bash rm -rf generated/code/*
note note NOTE Wenn Sie einen anderen Cache-Speicher als das Dateisystem verwenden, z. B. Redis oder Memcached, müssen Sie den Cache auch dort manuell löschen. -
Datenbankschema und -daten aktualisieren.
code language-bash bin/magento setup:upgrade
-
Deaktivieren Sie den Wartungsmodus.
code language-bash bin/magento maintenance:disable
-
(optional) Lack neu starten.
Wenn Sie Lack für das Zwischenspeichern von Seiten verwenden, starten Sie es neu:
code language-bash service varnish restart
Überprüfen Sie Ihre Arbeit
Um zu überprüfen, ob das Upgrade erfolgreich war, öffnen Sie Ihre Storefront-URL in einem Webbrowser. Wenn das Upgrade nicht erfolgreich war, wird Ihre Storefront nicht ordnungsgemäß geladen.
Wenn die Anwendung mit einem We're sorry, an error has occurred while generating this email.
Fehler fehlschlägt:
-
Setzen Sie Dateisysteminhaber und -berechtigungen als Benutzer mit
root
zurück. -
Löschen Sie die folgenden Ordner:
var/cache/
var/page_cache/
generated/code/
-
Überprüfen Sie Ihre Storefront in Ihrem Webbrowser erneut.