Durchführen eines Upgrades
Sie können über die Befehlszeile eine Aktualisierung von lokalen -Implementierungen der Adobe Commerce-Anwendung durchführen, wenn Sie die Software installiert haben, indem Sie:
- Herunterladen des Composer-Metapakets mit dem Befehl
composer create-project
. - Installieren des komprimierten Archivs.
- Informationen zu Adobe Commerce in Cloud-Infrastrukturprojekten finden Sie unter Upgrade der Commerce-Version im Cloud-Handbuch.
- Verwenden Sie diese Methode nicht zum Aktualisieren, wenn Sie das GitHub-Repository geklont haben. Siehe Aktualisieren einer Git-basierten Installation.
Die folgenden Anweisungen zeigen Ihnen, wie Sie ein Upgrade mit dem Composer Package Manager durchführen. Adobe Commerce 2.4.2 unterstützt Composer 2. Wenn Sie versuchen, ein Upgrade von <2.4.1 durchzuführen, müssen Sie zunächst ein Upgrade auf eine Version durchführen, die mit Composer 2 kompatibel ist (z. B. 2.4.2), indem Sie Composer 1 vor Upgrade auf Composer 2 für >2.4.2-Upgrades verwenden. Darüber hinaus müssen Sie eine unterstützte Version von PHP ausführen.
magento/composer-root-update-plugin
-Pakets installieren (siehe Voraussetzungen). Darüber hinaus haben sich die Befehle für die Aktualisierung von composer require magento/<package_name>
in composer require-commerce magento/<package_name>
geändert.Bevor Sie beginnen
Sie müssen die Upgrade-Voraussetzungen erfüllen, um Ihre Umgebung vorzubereiten, bevor Sie den Aktualisierungsprozess starten.
Packages verwalten
-
Wechseln Sie in den Wartungsmodus, um während des Aktualisierungsprozesses den Zugriff auf Ihren Speicher zu verhindern.
code language-bash bin/magento maintenance:enable
Weitere Optionen finden Sie unter Wartungsmodus aktivieren oder deaktivieren . Optional können Sie eine benutzerdefinierte Seite für den Wartungsmoduserstellen.
-
Der Start des Aktualisierungsprozesses während der Ausführung asynchroner Prozesse, z. B. von Verbrauchern in der Nachrichtenwarteschlange, kann zu Datenbeschädigungen führen. Um Datenbeschädigungen zu vermeiden, deaktivieren Sie alle Cron-Aufträge.
Adobe Commerce in der Cloud-Infrastruktur:
code language-bash ./vendor/bin/ece-tools cron:disable
Magento Open Source:
code language-bash bin/magento cron:remove
-
Starten Sie alle Verbraucher in der Nachrichtenwarteschlange manuell, um sicherzustellen, dass alle Nachrichten verbraucht werden.
code language-bash bin/magento cron:run --group=consumers
Warten Sie, bis der Cron-Auftrag abgeschlossen ist. Sie können den Status des Auftrags mit einem Prozess-Viewer überwachen oder den Befehl
ps aux | grep 'bin/magento queue'
mehrmals ausführen, bis alle Prozesse abgeschlossen sind. -
Erstellen Sie eine Sicherung der Datei "
composer.json
".code language-bash cp composer.json composer.json.bak
-
Fügen Sie spezifische Pakete entsprechend Ihren Anforderungen hinzu oder entfernen Sie sie.
Wenn Sie beispielsweise von Magento Open Source auf Adobe Commerce aktualisieren, 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 mit 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 lokalen Installationen muss dieser Wert entwederproduct-community-edition
oderproduct-enterprise-edition
betragen. -
<version>
- (Erforderlich) Die Version von Adobe Commerce, 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 Ihnen die interaktive Ansicht und Aktualisierung von nicht mehr aktuellen Werten aus früheren Versionen oder von benutzerdefinierten Werten, die nicht mit der Version übereinstimmen, auf die Sie aktualisieren. -
--force-root-updates
- (Optional) Überschreibt alle in Konflikt stehenden benutzerdefinierten Werte mit den erwarteten Commerce-Werten. -
--help
—(Optional) Bietet Nutzungsdetails zum Plug-in.
Wenn weder
--interactive-root-conflicts
noch--force-root-updates
angegeben sind, behält der Befehl die vorhandenen Konfliktwerte bei und zeigt eine Warnmeldung an. Weitere Informationen zum Plug-in finden Sie in der Gebrauchsanleitung für Plug-ins. -
-
Aktualisieren Sie die Abhängigkeiten.
code language-bash composer update
Beispiel - Liste der verfügbaren Versionen
Die vollständige Liste der verfügbaren 2.4.x-Versionen finden Sie unter:
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 in erster Linie funktionale Sicherheitskorrekturen für und. 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 sind so konzipiert, dass der Aktualisierungsprozess schneller und einfacher wird. 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 der Dateicomposer.json
nach Bedarf.note note NOTE Die Aktualisierung der Metadaten in der Datei " composer.json
" ist vollkommen oberflächlich und funktioniert nicht. -
Wenden Sie Aktualisierungen an.
code language-bash composer update
-
Löschen Sie die Unterverzeichnisse
var/
undgenerated/
: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
-
Wartungsmodus deaktivieren.
code language-bash bin/magento maintenance:disable
-
(Optional) Varnish neu starten.
Wenn Sie für die Seiten-Zwischenspeicherung "Varnish"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 Ihr 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:
-
Zurücksetzen von Dateisystemeigentum und -berechtigungen als Benutzer mit
root
-Berechtigungen. -
Löschen Sie die folgenden Ordner:
var/cache/
var/page_cache/
generated/code/
-
Überprüfen Sie Ihre Storefront in Ihrem Webbrowser erneut.