Shopware-Datenbank aufräumen Datenbank Cleanup & Optimizer.

Shopware-Datenbank planbar aufräumen - verwaiste Bestell-Versionen, Version-Commits, alte Logs. Mit Vorschau, Protokoll und automatischem Lauf.

01
Einblicke

Datenbank Cleanup in Bildern.

Übersicht, Analyse und Vorschau - so, wie sie im Shopware-Admin erscheinen.

02
Was das Plugin machtNeu

Räumt deine Shopware-DB auf.

Jede Bearbeitung einer Bestellung im Admin legt eine Arbeitskopie an. Wird sie abgebrochen, bleibt sie liegen. Über Monate werden daraus zehntausende Zeilen, bis Admin-Formulare in Timeouts laufen. Das Plugin findet und entfernt diese Reste, planbar und sicher.

Bestell-Versionen

Verwaiste Drafts entfernen

Abgebrochene Arbeitskopien in order und order_line_item, älter als das Mindestalter (Standard 7 Tage). Die Live-Version wird nie angefasst.

Version-Commits

Altlasten der Versionierung

Bereinigt Version-Commits ohne Live-Bezug, auf Wunsch im Aggressiv-Modus auch alle älteren Commits. Empfohlen nach großen Bereinigungen.

log_entry

Logtabelle kürzen

Löscht Einträge in log_entry ab einem Mindestalter, Standard 30 Tage.

Tabellen-Übersicht

Größte Tabellen und OPTIMIZE

Zeigt die größten Tabellen und gibt mit OPTIMIZE TABLE den Platz wirklich frei, denn InnoDB markiert gelöschte Seiten sonst nur als frei.

Stark verwaist

Auffällige Bestellungen

Listet Bestellungen mit ungewöhnlich vielen Versionen, standardmäßig mehr als fünf.

Unberührt

Status bleibt erhalten

Bestell-, Zahlungs- und Lieferstatus liegen in state_machine_history und bleiben erhalten. Abhängige Tabellen räumen sich über die Fremdschlüssel mit auf.

Datenbank Cleanup & Optimizer - Ansicht in Shopware
Dry-Runvor jedem Löschen
So sieht es im Admin aus
  1. Aktuelle Lage der Datenbank ansehen
  2. Mindestalter und Batch-Größe festlegen
  3. Vorschau prüfen, dann bereinigen
  4. Auf Wunsch läuft es regelmäßig von selbst
Ideal für
Große DatenbankenLangsame BackupsNach Shopware-UpdatesTimeouts im Admin
Alle Bilder ansehen
03
Warum es funktioniert

Datenbank-Hygiene ohne Risiko.

Datenbank-Aufräumen ist heikel, gelöschte Zeilen sind weg. Drei Mechanismen sorgen dafür, dass nichts schiefgeht.

Sicher · nachvollziehbar · planbar

Drei Prinzipien für jedes Cleanup.

Die Vorschau zeigt erst, was gelöscht würde. Das Protokoll hält jeden echten Lauf fest. Die automatische Bereinigung läuft nach festen Regeln statt nach spontanen Klicks.

Vorschau

Erst zeigen, dann löschen

Die Vorschau im Admin und bin/console staw:order-versions:analyze zeigen die Menge, ohne etwas zu löschen.

Protokoll

Nachvollziehbar

Jeder echte Lauf wird mit Zeitpunkt, Auslöser, Benutzer, Anzahl gelöschter Zeilen und Dauer protokolliert, egal ob aus dem Admin, per Konsole oder automatisch.

Automatisch

Planbar statt manuell

Stündlich, alle 2, 6 oder 12 Stunden, täglich oder wöchentlich per Scheduled Task. Dafür muss ein Worker laufen.

04
Konfiguration

Im Admin oder per Konsole.

Die Oberfläche für den Alltag, die Konsole für sehr große Tabellen ohne HTTP-Timeout.

Mindestalter

Schützt laufende Bearbeitungen

Standard sind sieben Tage. Mit 0 fällt der Altersfilter weg, das kann aktive Bearbeitungen zerstören.

Batch-Größe

Schnell oder schonend

Zeilen pro DELETE zwischen 100 und 1.000.000, Standard 50.000. Höher ist schneller, sperrt die Tabellen aber länger.

Abbrechen

Jederzeit möglich

Ein laufender Vorgang lässt sich abbrechen. Begonnene Batches werden sauber zu Ende geführt, damit die Datenbank konsistent bleibt.

Protokoll

Aufbewahrung einstellbar

Protokolleinträge werden standardmäßig 365 Tage aufbewahrt, 0 bedeutet unbegrenzt.

Diagnose

Wenn null Zeilen gelöscht werden

Ein Diagnose-Endpoint liefert exakte Zählungen und einen Test-DELETE, der sofort zurückgerollt wird. Er verändert nichts.

Backup

Vor jedem scharfen Lauf

Gelöschte Zeilen sind weg. Leg vor dem ersten Lauf ein Datenbank-Backup an.

05
Technische Details

Saubere Shopware-Integration.

Eigener Scheduled Task, Konsolenbefehle, Batch-Verarbeitung. Keine Core-Eingriffe.

Kompatibilität

Shopware 6.7PHP 8.1+MySQL 5.7.4+ / MariaDB 10.3+

Konsole

bin/console staw:order-versions:analyze zeigt, was gelöscht würde. bin/console staw:order-versions:clean --age-days=7 --batch-size=50000 räumt auf, mit Fortschrittsanzeige.

Erster Lauf

Bei großen Tabellen: Backup, dann die Konsole in einer tmux- oder screen-Sitzung nutzen. Danach die automatische Bereinigung täglich mit sieben Tagen Mindestalter aktivieren.

Speicher freigeben

OPTIMIZE TABLE `order`, `order_line_item`; gibt den Platz an das Dateisystem zurück. Außerhalb der Geschäftszeiten ausführen.

Scheduled Task

Läuft mit dem Admin-Worker oder messenger:consume. Ohne aktiven Worker passiert nichts.

Diagnose

GET /api/_action/staw-order-version-cleaner/diagnose zeigt Zählungen und Beispiel-IDs, ohne Daten zu ändern.

06
Verfügbarkeit

Über den Store oder direkt bei uns.

Zwei Wege, derselbe Funktionsumfang - such dir aus, was besser zu deinem Setup passt.

Direkt über Stone & Water

Ab sofort möglich

Monatlich4,99 €
Bester PreisJährlich50,90 €15 % günstiger

Alle Preise netto zzgl. USt.

Lade die kostenlose Plugin Suite herunter und spiele sie im Admin ein, ganz ohne SSH. Darüber installierst und aktualisierst du das Plugin mit einem Klick. Die Lizenz kaufst du direkt bei uns, mit Rechnung von uns und Support direkt vom Entwickler.

Plugin Suite herunterladen+49 2555 9997342

Shopware Store

In Vorbereitung

Das Plugin wird im offiziellen Shopware Community Store gelistet. Installation und automatische Updates laufen dann über den Plugin Manager im Backend, die Abrechnung über deinen Shopware-Account. Sobald verfügbar, verlinken wir es hier.

07
Häufige Fragen

Häufige Fragen zum Datenbank-Aufräumen

Warum ist meine Shopware-Datenbank so groß?

Eine häufige Ursache sind verwaiste Bestell-Versionen. Bei jeder Bearbeitung einer Bestellung im Admin legt Shopware eine Arbeitskopie in order und order_line_item an. Wird die Bearbeitung abgebrochen, bleibt sie liegen. Über Monate summiert sich das, bis Admin-Formulare in Timeouts laufen.

Was wird gelöscht und was bleibt?

Gelöscht werden nur Versionen, die nicht die Live-Version sind und älter als das Mindestalter, standardmäßig sieben Tage. Bestell-, Zahlungs- und Lieferstatus bleiben erhalten, abhängige Tabellen räumen sich über die Fremdschlüssel mit auf.

Kann ich vorher sehen, was gelöscht würde?

Ja. Die Vorschau im Admin und der Befehl bin/console staw:order-versions:analyze zeigen die Menge, ohne etwas zu löschen. Jeder echte Lauf wird mit Zeitpunkt, Auslöser, Benutzer, Anzahl und Dauer protokolliert.

Warum wird die Datenbank nach dem Aufräumen nicht kleiner?

InnoDB markiert gelöschte Seiten nur als frei. Den Speicherplatz gibt erst OPTIMIZE TABLE an das Dateisystem zurück. Weil der Befehl die Tabellen kurz sperrt, führst du ihn außerhalb der Geschäftszeiten aus.

Läuft die Bereinigung automatisch?

Auf Wunsch ja: stündlich, alle 2, 6 oder 12 Stunden, täglich oder wöchentlich über einen Scheduled Task. Dafür muss ein Worker laufen, also der Admin-Worker oder messenger:consume.

Was kostet das Plugin?

Der Direktbezug kostet 4,99 Euro netto im Monat oder 50,90 Euro netto im Jahr. Bei jährlicher Zahlung sparst du 15 Prozent. Alle Preise verstehen sich zuzüglich Umsatzsteuer.