Analyse Shop-Management

Magento 2 CLI Guide 2026: Die wichtigsten Befehle für Open Source und Adobe Commerce

Ein Klick auf „Flush Cache Storage“ im Admin Panel dauert bei einem Magento-Shop mit 400.000 Artikeln gern zwei Minuten, manchmal endet er im Timeout. Der Befehl bin/magento cache:flush ist in unter einer Sekunde erledigt. Genau hier trennt sich 2026 die Spreu vom Weizen: Händler, die ihre Shops noch durch die Klickstrecke des Backends jagen, arbeiten gegen das System. Die Magento 2 CLI ist längst das eigentliche Steuerpult, egal ob Magento Open Source oder Adobe Commerce auf dem Server läuft.

Mehr als hundert Befehle listet bin/magento list auf einer frischen Installation auf, mit zusätzlichen Modulen werden es schnell 130. Die wenigsten davon braucht jemand täglich. Aber die fünfzehn, die zählen, sollte jeder Shop-Betreiber und jede Agentur im Schlaf beherrschen.

Warum schlägt die Magento 2 CLI das Admin Panel?

Der Browser ist das Problem. Jede Aktion im Admin Panel läuft durch den Webserver, und der kennt Zeitlimits, Memory-Limits und abreißende Verbindungen. Ein Reindex über das Backend bei einem Katalog mit ein paar hunderttausend SKUs? Praktisch nicht machbar. PHP auf der Kommandozeile kennt dagegen standardmäßig kein max_execution_time, und das Speicherlimit ist in der CLI-php.ini meist großzügiger gesetzt oder ganz abgeschaltet.

0,8 Sekunden braucht ein Cache-Flush auf der Shell, wo das Backend gern mal 120 Sekunden klickt. Bei Deployments, die nachts um drei laufen, summiert sich das zu Stunden pro Woche.

Dazu kommt die Skriptbarkeit. Was auf der CLI läuft, lässt sich in Shell-Skripte packen, per Cron ausführen, in CI-Pipelines einhängen und in Logdateien nachvollziehen. Das Admin Panel protokolliert dagegen kaum nachvollziehbar, wer wann welchen Cache geleert hat. Für deutsche Händler mit Wirtschaftsprüfern, Dokumentationspflichten und vier Augen-Prinzip im Release-Prozess ist das kein akademischer Punkt, sondern gelebter Alltag.

Kernsatz: Alles, was im Admin Panel länger als dreißig Sekunden dauert oder öfter als einmal pro Woche anfällt, gehört auf die Kommandozeile und ins Skript.

Diese bin/magento-Befehle gehören zum Handwerkszeug

Wer sich die volle Liste von bin/magento list ausgibt, ertrinkt in Optionen. In der Praxis konzentriert sich die tägliche Arbeit auf eine überschaubare Gruppe:

  • setup:upgrade und setup:di:compile nach jedem Modul-Update, ohne Ausnahme
  • indexer:reindex, indexer:status und indexer:reset für die zehn Core-Indexer
  • cache:clean und cache:flush, wobei der Unterschied zählt: clean räumt nur markierte Einträge ab, flush leert den kompletten Speicher
  • deploy:mode:set production vor dem Livegang, developer-Modus hat auf Live-Systemen nichts verloren
  • maintenance:enable –ip=83.169.x.x, damit das eigene Team trotz Wartungsseite arbeiten kann
  • config:set und config:show für Base-URLs, Suchmaschinen-Einstellungen und alles, was sonst im Store-Config-Dschungel versteckt liegt
  • admin:user:create und admin:user:unlock, wenn der Dienstleister mal wieder ausgesperrt ist

Vorsicht an einer Stelle: cache:flush auf einem Redis, den sich mehrere Anwendungen teilen, löscht auch deren Daten. Wer Sessions und Cache in derselben Redis-Datenbank führt, räumt beim Flush aus Versehen die Warenkörbe leer. Getrennte Datenbanken für Cache, Sessions und Full-Page-Cache sind Pflicht, keine Kür.

Ein zweiter Klassiker: indexer:status zeigt hängende Indexer als „Processing“ an, obwohl der Prozess längst tot ist. Dann hilft nur indexer:reset gefolgt von einem kompletten Reindex, und genau so ein Fall zeigt, warum man das per Shell macht. Im Backend gibt es dafür schlicht keinen Knopf.

Wie läuft Import und Export in Magento 2 über die Kommandozeile?

Hier wird es ehrlich, denn die Antwort überrascht viele: Magento 2 bringt bis heute keinen nativen CLI-Befehl für den Produktimport mit. Der Standardweg führt weiterhin über System, Import im Admin Panel, und dort wartet er mit denselben Browser-Limits wie jeder andere Klickweg. Wer 60.000 SKUs nächtlich aus dem ERP synchronisieren muss, scheitert damit an der ersten CSV-Datei.

Die Community hat diese Lücke vor Jahren geschlossen. FastSimpleImport2 aus dem Umfeld der deutschen FireGento-Community, ursprünglich von Andreas von Studnitz und Netresearch entwickelt, erlaubt programmatische Importe direkt aus PHP-Skripten heraus, inklusive Verhalten wie „Replace“ oder „Delete“, die der Core-Importer nur halbherzig abbildet. FireBear Studios Improved Import & Export geht weiter: eigene Cron-Zeitpläne, CLI-Trigger pro Profil, Mapping von Fremdformaten und Anbindungen an Google Sheets oder REST-APIs. Für Adobe-Commerce-Nutzer existiert zusätzlich der asynchrone Weg über die Message Queue, bei dem Import-Jobs an RabbitMQ-Konsumenten übergeben werden, die per queue:consumers:start gestartet werden.

12 Minuten statt vier Stunden: So sieht der Unterschied aus, wenn ein mittelständischer Ersatzteilhändler seinen Nachtabgleich aus SAP nicht mehr per Backend-Upload, sondern als Delta-Import über ein CLI-Skript fährt. Die CSV-Datei landet per SFTP auf dem Server, ein Cron-Job in der Gruppe consumers zieht sie ein, Fehler landen im Log statt in einer Browser-Fehlermeldung, die um 2 Uhr nachts niemand sieht.

Der Export sieht nicht besser aus. Auch hier fehlt ein echter Shell-Befehl im Core. Wer regelmäßig Produktdaten an Preissuchmaschinen oder Marktplätze liefern muss, baut entweder auf die genannten Erweiterungen oder schreibt ein schlankes eigenes Modul, das die ImportExport-Batch-Verarbeitung des Cores nutzt. Der Aufwand hält sich in Grenzen, die Wartbarkeit steigt enorm.

Der Core-Importer von Magento 2 ist kein Werkzeug für den Dauerbetrieb. Er ist ein Notnagel, den Adobe seit Jahren nicht ersetzt hat, und die Community längst überholt.

Deployment ohne Klickstrecke: Konfiguration als Code

Der größte Hebel der Magento 2 CLI liegt woanders als im Cache. Mit app:config:dump schreibt Magento die komplette Store-Konfiguration in die Datei config.php, die ins Git-Repository wandert. Auf dem Zielsystem holt app:config:import den Stand wieder herein. Damit wird Konfiguration versionierbar, reviewbar und zwischen Staging und Live exakt reproduzierbar. Sensible Werte wie API-Keys gehören dabei in die env.php, die bewusst nicht versioniert wird, und lassen sich über config:sensitive:set setzen.

Deutsche Shops müssen beim statischen Content einen Schritt mehr denken: setup:static-content:deploy de_DE en_US baut die Themes für beide Sprachen, wer das de_DE vergisst, bekommt englische Fallbacks im Checkout. Mit dem Parameter –jobs=4 parallelisiert sich der Deploy spürbar.

Hoster wie das Paderborner maxcluster oder Agenturen wie integer_net haben ihre Deployment-Pipelines längst um genau diese Befehle herum gebaut. Der Ablauf ist überall derselbe: Wartungsmodus an, Code ausrollen, setup:upgrade, Kompilierung, statischer Content, Config-Import, Wartungsmodus aus. Fünf Minuten, null Klicks, jederzeit wiederholbar.

Was bringt 2026 für Magento-Open-Source-Nutzer?

Adobe konzentriert seine Entwicklungskraft sichtbar auf Adobe Commerce und die Cloud, Open Source bekommt vor allem Sicherheitspatches ab. In diese Lücke ist der Community-Fork Mage-OS gestoßen, an dessen Entwicklung deutsche Agenturen und Entwickler maßgeblich beteiligt sind. Wer heute einen Shop neu aufsetzt, sollte beide Varianten kennen, denn die CLI-Befehle sind deckungsgleich. bin/magento funktioniert unter Mage-OS exakt so wie unter Open Source 2.4.x, inklusive aller hier beschriebenen Workflows.

Die Lizenzfrage bleibt indes unbequem. Adobe Commerce startet bei rund 22.000 US-Dollar pro Jahr und skaliert mit dem Umsatz, Open Source kostet keine Lizenz, dafür mehr Eigenverantwortung bei Updates. Die CLI ändert daran nichts, sie macht aber beide Wege billiger: Jede Stunde, die ein Skript statt eines Menschen im Backend verbringt, fehlt auf keiner Rechnung.

Meine Empfehlung an Shop-Betreiber ist daher unbequem konkret: Sperren Sie sich und Ihr Team für eine Woche aus dem Admin Panel aus, soweit es die täglichen Aufgaben erlauben. Was dann nicht über die Shell geht, gehört dokumentiert und automatisiert. Wer 2026 Deployments noch per Mausklick fährt, betreibt keinen Shop. Er betreibt ein Museum mit Warenkorb.