WordPress-DB aufgebläht: Das Action Scheduler Problem

Das Problem

Neulich bemerkte ich in der DB einer Kunden-Website eine Tabelle mit über 176.000 Einträgen (20Mb). Nur, die Tabelle war früher nicht da und ich hatte keine Ahnung von welchem Plugin sie eingerichtet wurde. Recherchen zeigten dass es sich um die Bibliothek “Action Scheduler” handelt, die im Rahmen von WooCommerce entwickelt wurde, und dann zur Nutzung durch andere Plugins freigegeben wurde. Es gibt auch ein Plugin “Action Scheduler”, der einen Blick auf die Aktivitäten anderer Plugins zur Verfügung stellt und Aktionen löschen lässt (Unterpunkt im Menü ‘Werkzeuge’). Achtung: Nicht installieren wenn kein Plugin die DB-Tabellen angelegt hat. Die Bibliothek scheint zunehmend beliebt zu sein, sie hat neben WooCommerce z.B. bei All in One SEO (AIOSEO – ab Vn. 4) und auch Rank Math Einzug gefunden.

Die Nutzung dieser Bibliothek kann Probleme verursachen, teils schon bei der Installation eines Plugins das es einsetzt (vor allem wenn eine frühere Version der “Action Scheduler” Tabellen schon vorhanden sind), aber auch dadurch dass es mitunter (sehr) viele Einträge in der DB-Log-Tabelle wp_actionscheduler_logs von “Action Scheduler” gibt, die teils nicht aufgeräumt werden (insb. bei AIOSEO): siehe:

Andere Websites, bei denen ich AIOSEO im Einsatz habe, haben längst nicht so viele Log-Einträge wie die “auffällige” Website. Ich vermute dass dies daran liegt, dass sie sehr sehr viele Bilder besitzt in der Mediathek, und dass die regelmäßige Aktion ‘aioseo_image_sitemap_scan’ daher viele Log-Einträge erzeugt. Nur eine Vermutung. Auch auffällig, dass seit dem 3. Februar die “auffällige” Website keine neuen Logsätze verzeichnet (andere schon). Ich blicke nicht durch, für mich ist AIOSEO in dieser Hinsicht völlig außer Kontrolle, nicht nachvollziehbar.

Die (radikale) Lösung – Action Scheduler entfernen

Angeblich soll seitens AIOSEO ein Aufräumen alter Logsätze im Anmarsch sein – vor 6 Wochen angekündigt “im nächsten Update” – ich merke nichts davon. Hier also wie man das Problem für All in One SEO auf die radikale Art lösen kann – das Plugin löschen:

  1. Ggf. “SEOPress” installieren (s. unten) und die SEO-Angaben von AIOSEO mit ihm importieren, damit sie nicht verloren gehen.
  2. In den “Haupteinstellungen| Advanced” von AIOSEO herunterscrollen und bei “Uninstall AIOSEO” ein Häkchen setzen – damit er wenigstens seine eigenen DB-Tabellen entfernt.
  3. AIOSEO deaktivieren und löschen.
  4. Die vier Tabellen von der Action Scheduler Bibliothek bleiben leider dabei erhalten, wohl weil sie auch von anderen Plugins mitbenutzt werden könnten.
  5. Diese vier Tabellen in der DB (z.B. mit phpMyAdmin) zunächst umbennen (lieber mit Bedacht als mit Reue): wp_actionscheduler_actions, wp_actionscheduler_claims, wp_actionscheduler_groups, wp_actionscheduler_logs
  6. Wenn noch alles weiter läuft, nach ein paar Tagen die umbenannten Tabellen endgültig löschen.

Jetzt haben wir ein großes Komplex und eine Menge Daten eingespart – aber wir brauchen doch noch jedenfalls eine XML-Sitemap, und meist wenigstens eine einfache Unterstützung bei der Suchmaschinenoptimierung…

Die Alternative für eine schlanke WordPress-Datenbank

Wer meint, dass Plugins wie AIOSEO, Yoast und Rank Math zu viel tun für seine Zwecke, und keine aufgeblähte DB will, kann auf ein anderes SEO Plugin ausweichen. Ich habe eins gefunden, das meine (eher bescheidenen) Bedürfnisse erfüllt – es kann sogar nicht nur mit den “großen drei” erstaunlich gut mithalten, es übertrifft sie in manchen Hinsichten: SEOPress.

SEOPress, on-site SEO von SEOPress
Neben den üblichen Features gibt es: Vorschläge zum Inhalt, Google Preview (Mobil + Desktop), Schnittstelle zu Matomo, erzeugt selbst eine (customizierbare) XML-Sitemap + Image-Sitemap, HTML Sitemap, automatische SEO für Bilder, Datenimport von 9 anderen SEO-Plugins. Erkennt Nginx als Webserver und schlägt Regeln für XML-Sitemap vor. Kann mit Classic Editor, Block Editor, WPML, PolyLang, WooCommerce u.v.a.m. Schlagwörter werden in der HTML-Sitemap nicht ausgegeben – aber sie sind meistens sowieso in einer Sidebar. Wenn man für eine Seite / einen Beitrag die Eigenschaft “noindex” vergibt, so wird dies sowohl als Meta-Tag im Seitenkopf ausgegeben, als auch aus der XML-Sitemap entfernt. Auch sehr nützlich: Wenn die Inhalte der Seite umziehen, so kann eine HTTP-Weiterleitung ausgewählt werden. Neuerdings gibt es von SEOPress Videos auf YouTube. Mehr zu SEOPress auf meiner Seite über Suchmaschinenoptimierung.

Noch keine Kommentare

zu WordPress-DB aufgebläht: Das Action Scheduler Problem

Schreibe einen Kommentar

Bitte alle Felder ausfüllen. Deine IP-Adresse wird anonymisiert gespeichert. Fantasienamen und E-Mail Adressen (wie "donald@duck.org") werden akzeptiert.