Zum Inhalt springen
Tipps & Anleitungen

WordPress Datenbank bereinigen – Revisionen und Spam entfernen

Über Jahre sammelt die Datenbank Ballast: Revisionen, Transients, Spam, verwaiste Tabellen. Regelmäßiges Aufräumen hält Backups schlank und Abfragen schnell — so geht's sicher.

Eine WordPress-Datenbank wächst nie nur mit den Inhalten — sie wächst mit allem Drumherum: Revisionen, abgelaufene Transients, Spam-Kommentare, verwaiste Metadaten und Tabellen längst gelöschter Plugins. Das kostet Backup-Volumen und macht Abfragen zäh. Einmal im Quartal aufräumen hält das System schlank.

Wichtig: Erst Backup, dann Besen

Jede Bereinigung löscht endgültig. Vor dem ersten Aufräumen steht deshalb immer ein frisches Datenbank-Backup — die 60 Sekunden sind nicht verhandelbar.

Was sich ansammelt — und was weg kann

  1. Revisionen: WordPress speichert jede Beitragsversion. Nach Jahren stehen zu manchem Artikel 50+ Kopien in der Datenbank. Alte Revisionen können weg; künftig begrenzt sie eine Zeile in der wp-config.php:
    define('WP_POST_REVISIONS', 5);
  2. Abgelaufene Transients: Zwischenspeicher-Einträge mit Ablaufdatum, die WordPress nicht zuverlässig wegräumt. Zehntausende abgelaufene Transients in wp_options sind keine Seltenheit — besonders tückisch, wenn sie mit Autoload-Flag jede Seite mitladen.
  3. Spam- und Papierkorb-Inhalte: Kommentare im Spam-Ordner, gelöschte Beiträge im Papierkorb — beides bleibt 30 Tage (Papierkorb) bzw. unbegrenzt (Spam) liegen.
  4. Verwaiste Metadaten: post_meta ohne Beitrag, user_meta ohne Benutzer, term-Beziehungen ins Leere — Rückstände gelöschter Inhalte.
  5. Plugin-Hinterlassenschaften: Viele Plugins lassen bei der Deinstallation ihre Tabellen und Optionen zurück. Eine Datenbank mit 60 Tabellen bei 25 aktiven Plugins erzählt Geschichte.

Weg 1: Aufräum-Plugin (empfohlen für die Routine)

WP-Optimize oder Advanced Database Cleaner zeigen vor dem Löschen genau, was gefunden wurde:

  1. Backup prüfen (siehe oben).
  2. Konservativ starten: Revisionen (älter als 30 Tage), abgelaufene Transients, Spam, Papierkorb.
  3. Ergebnis testen — Website durchklicken.
  4. Fortgeschritten: verwaiste Tabellen. Hier gilt: nur löschen, was du sicher einem deinstallierten Plugin zuordnen kannst. Im Zweifel stehen lassen.
  5. Zeitplan aktivieren (wöchentlich/monatlich) — dann bleibt es dauerhaft sauber.

Weg 2: WP-CLI (für Server-Freunde)

wp transient delete --expired
wp post delete $(wp post list --post_type=revision --format=ids) --force
wp comment delete $(wp comment list --status=spam --format=ids) --force
wp db optimize

Ideal für Cron-gesteuerte, regelmäßige Läufe — ganz ohne zusätzliches Plugin.

Der unterschätzte Hebel: Autoload-Optionen

Alle Optionen mit autoload=yes lädt WordPress bei jedem Seitenaufruf. Wächst diese Menge auf mehrere Megabyte (Plugin-Leichen!), bremst das jede einzelne Seite. Prüfen per SQL:

SELECT SUM(LENGTH(option_value))/1024/1024 AS mb FROM wp_options WHERE autoload='yes';

Werte über ~1 MB verdienen einen genaueren Blick: Welche Riesen-Optionen gehören zu Plugins, die es nicht mehr gibt? Solche Fälle sind übrigens ein häufiger Grund für Timeouts auf ansonsten gesunden Websites.

Realistische Erwartung

Eine Bereinigung macht aus einer langsamen Website keine schnelle — dafür sind Caching und Bildoptimierung die größeren Hebel. Aber sie hält Backups schlank, Restore-Zeiten kurz und beseitigt die schleichende Verfettung, die sich sonst nach Jahren rächt.

Im Core-Modul von Ammera Care läuft die Datenbank-Pflege als regelmäßige Routine mit — mit Backup davor, Protokoll danach und ohne dass du daran denken musst. Zum Core-Modul.

Häufig gestellte Fragen

Ammera Care Dieser Ratgeber wurde vom Ammera-Care-Team verfasst. Seit 2014 betreuen wir WordPress-Websites für Unternehmen im DACH-Raum.