Isometrische 3D-Illustration, die das Konzept von MySQL visualisiert. Eine zentrale "MySQL Database (Relational DBMS)" mit dem Delfin-Logo empfängt SQL-Anfragen von verschiedenen Quellen wie "Web Server", "Mobile Application" und "Desktop Application". Die Ergebnisse werden als strukturiertes "Data Result Set" auf einem Monitor dargestellt.

MySQL: Das Datenbanksystem für WordPress erklärt

MySQL ist ein relationales Open-Source-Datenbankverwaltungssystem (RDBMS), das als Backend-Datenbank für WordPress verwendet wird, um alle Inhalte, Benutzerdaten, Einstellungen und Konfigurationen zu speichern. Es bildet zusammen mit PHP die technische Grundlage jeder WordPress-Installation.

Was ist MySQL und warum nutzt WordPress es?

MySQL wurde 1995 entwickelt und gehört heute zu den weltweit am meisten verbreiteten Datenbanksystemen. WordPress setzt auf MySQL (oder die kompatible Alternative MariaDB), weil es folgende Eigenschaften vereint:

  • Open Source und kostenlos: MySQL steht unter der GNU General Public License (GPL) und ist frei verfügbar
  • Plattformunabhängig: Läuft auf Windows, Linux, macOS und nahezu allen Betriebssystemen
  • Hohe Performance: Optimiert für schnelle Lese- und Schreiboperationen bei Web-Anwendungen
  • Zuverlässigkeit: Bewährte Stabilität auch bei hohem Datenaufkommen
  • Skalierbarkeit: Von kleinen Blogs bis zu Enterprise-Websites einsetzbar

WordPress kommuniziert über die Skriptsprache PHP mit der MySQL-Datenbank. Jedes Mal, wenn du eine Seite aufrufst, sendet WordPress SQL-Abfragen an die Datenbank, um die benötigten Inhalte abzurufen und dynamisch zusammenzustellen.

Wie funktioniert MySQL in WordPress?

Die WordPress-Datenbankstruktur

Eine frische WordPress-Installation erstellt automatisch 12 Standard-Tabellen in deiner MySQL-Datenbank. Jede Tabelle hat ein Präfix (standardmäßig wp_), das du aus Sicherheitsgründen bei der Installation ändern solltest:

Kern-Tabellen:

  • wp_posts – Speichert alle Beiträge, Seiten und Custom Post Types
  • wp_postmeta – Zusätzliche Metadaten zu Beiträgen (z. B. SEO-Felder, Custom Fields)
  • wp_users – Benutzerdaten wie Username, E-Mail, Passwort-Hash
  • wp_usermeta – Erweiterte Benutzerinformationen und Einstellungen
  • wp_comments – Alle Kommentare zu Beiträgen
  • wp_commentmeta – Metadaten zu Kommentaren
  • wp_terms – Begriffe für Kategorien, Tags und Taxonomien
  • wp_term_taxonomy – Zuordnung von Begriffen zu Taxonomie-Typen
  • wp_term_relationships – Verknüpfung zwischen Posts und Terms
  • wp_options – Globale WordPress-Einstellungen (Theme, Plugins, Site-URL etc.)
  • wp_links – Blogroll-Links (heute kaum noch genutzt)
  • wp_termmeta – Metadaten für Taxonomie-Begriffe

Plugins und Themes können zusätzliche Tabellen anlegen. WooCommerce etwa erstellt über 10 eigene Tabellen für Produkte, Bestellungen und Shop-Daten.

SQL-Abfragen: So kommuniziert WordPress mit MySQL

WordPress nutzt die WordPress Database Class (wpdb) für sichere Datenbankabfragen. Ein Beispiel: Wenn ein Besucher einen Blogbeitrag aufruft, führt WordPress etwa folgende SQL-Abfrage aus:

sql

SELECT * FROM wp_posts 
WHERE post_type = 'post' 
AND post_status = 'publish' 
AND ID = 123;

Diese Abfrage holt den Beitrag mit der ID 123 aus der Tabelle wp_posts. Parallel werden weitere Abfragen für Metadaten, Taxonomien und Kommentare ausgeführt.

Wichtig: Jede WordPress-Seite löst zwischen 10 und 100+ Datenbankabfragen aus – je nach Komplexität der Seite und Anzahl der Plugins. Langsame Abfragen sind einer der häufigsten Performance-Bremsen.

MySQL vs. MariaDB: Was ist der Unterschied?

Viele moderne Hosting-Provider setzen inzwischen auf MariaDB statt auf MySQL. MariaDB ist eine Fork (Abspaltung) von MySQL, die 2009 von den ursprünglichen MySQL-Entwicklern gegründet wurde, nachdem Oracle MySQL übernommen hatte.

Gemeinsamkeiten:

  • Zu 100% kompatibel mit MySQL (bis MySQL 5.5)
  • Identische Befehle und Syntax
  • WordPress funktioniert problemlos mit beiden Systemen

Unterschiede:

  • MariaDB ist vollständig Open Source und unabhängig
  • Bessere Performance bei komplexen Abfragen
  • Erweiterte Storage Engines (z. B. Aria, ColumnStore)
  • Aktivere Entwickler-Community

Für WordPress-Nutzer spielt der Unterschied in der Praxis kaum eine Rolle. Beide Systeme sind vollständig austauschbar.

MySQL-Datenbank verwalten: phpMyAdmin & Co.

Um deine MySQL-Datenbank direkt zu verwalten, bieten die meisten Hoster Verwaltungstools wie phpMyAdmin an. Damit kannst du:

  • Tabellen und Daten einsehen und bearbeiten
  • SQL-Abfragen manuell ausführen
  • Datenbanken exportieren (Backup erstellen)
  • Datenbanken importieren (z. B. nach einem Umzug)
  • Benutzerrechte verwalten
  • Beschädigte Tabellen reparieren

Alternative Tools:

  • Adminer – Schlanke phpMyAdmin-Alternative (nur eine PHP-Datei)
  • MySQL Workbench – Desktop-Software für professionelle Datenbank-Administration
  • TablePlus – Modernes GUI-Tool für macOS, Windows und Linux
  • WP-CLI – Kommandozeilen-Tool für Datenbank-Operationen direkt in WordPress

Sicherheitshinweis: Zugriff auf phpMyAdmin sollte mit einem starken Passwort geschützt und idealerweise per IP-Whitelist eingeschränkt werden. Ein offenes phpMyAdmin ist ein beliebtes Angriffsziel für Hacker.

MySQL-Datenbank optimieren: Performance-Tipps

Eine aufgeblähte oder schlecht konfigurierte Datenbank kann deine Website massiv verlangsamen. Mit diesen Maßnahmen holst du mehr Performance heraus:

1. Datenbank-Tabellen regelmäßig optimieren

MySQL speichert gelöschte Daten nicht sofort physisch, sondern markiert sie nur als gelöscht. Das führt zu Overhead (ungenutzter Speicherplatz). Lösung:

Via phpMyAdmin:

  • Alle Tabellen auswählen
  • Unter „Mit markierten“ → „Tabelle optimieren“ wählen

Via WP-CLI:

wp db optimize

Via Plugin:

  • WP-Optimize (automatische Optimierung)
  • Advanced Database Cleaner

2. Revisionen begrenzen

WordPress speichert automatisch alle Entwurfsversionen deiner Beiträge. Bei umfangreichen Artikeln können schnell 20+ Revisionen pro Beitrag entstehen. Das bläht die wp_posts-Tabelle unnötig auf.

Lösung in wp-config.php:

// Revisionen auf 3 begrenzen
define('WP_POST_REVISIONS', 3);

// Revisionen komplett deaktivieren
define('WP_POST_REVISIONS', false);

Alte Revisionen kannst du mit einem Plugin wie WP-Sweep oder direkt via SQL-Abfrage löschen:

DELETE FROM wp_posts WHERE post_type = 'revision';

3. Transients und Autoload-Daten bereinigen

Die Tabelle wp_options speichert temporäre Daten (Transients) und Plugin-Einstellungen. Problematisch wird es, wenn:

  • Abgelaufene Transients nicht gelöscht werden
  • Zu viele Einträge mit autoload = 'yes' existieren (werden bei jedem Seitenaufruf geladen)

Autoload-Einträge prüfen:

SELECT option_name, LENGTH(option_value) as size 
FROM wp_options 
WHERE autoload = 'yes' 
ORDER BY size DESC 
LIMIT 20;

Große Einträge solltest du kritisch prüfen. Manche Plugins speichern unnötig große Daten im Autoload.

Abgelaufene Transients löschen:

DELETE FROM wp_options 
WHERE option_name LIKE '_transient_%' 
AND option_name NOT LIKE '_transient_timeout_%';

4. Indizes optimieren

Indizes beschleunigen Suchabfragen erheblich. WordPress legt standardmäßig sinnvolle Indizes an, aber manche Plugins vergessen das.

Fehlende Indizes identifizieren:
In phpMyAdmin unter „Struktur“ prüfen, ob häufig abgefragte Spalten einen Index haben, zum Beispiel post_status, post_type, post_date.

5. Query Monitor Plugin nutzen

Das Plugin Query Monitor zeigt dir:

  • Welche SQL-Abfragen am längsten dauern
  • Welche Plugins die meisten Abfragen auslösen
  • Duplicate Queries, also unnötige Mehrfachabfragen

So identifizierst du Performance-Bremsen gezielt und kannst bei problematischen Plugins nach Alternativen suchen.

6. Caching implementieren

Eine gut konfigurierte Caching-Lösung reduziert Datenbankabfragen deutlich:

  • Object Cache, Redis oder Memcached, speichert Abfrageergebnisse im RAM
  • Page Cache, WP Rocket oder LiteSpeed Cache, liefert fertige HTML-Seiten ohne Datenbankzugriff
  • Database Query Cache, bereits in MySQL vorhanden und serverseitig zu konfigurieren

MySQL-Sicherheit: So schützt du deine Datenbank

1. Starke Zugangsdaten

Das klingt banal, ist aber entscheidend:

  • Niemals root als Datenbankbenutzer verwenden
  • Mindestens 16-stellige, zufällige Passwörter nutzen
  • Separate Datenbankbenutzer pro WordPress-Installation anlegen

2. Präfix ändern

Das Standard-Präfix wp_ macht es Angreifern leicht. Ändere es bei der Installation zu etwas Individuellem wie xyz_42f8_.

Nachträgliches Ändern ist aufwendig. Alle Tabellen müssen umbenannt und sämtliche Verweise in der Datenbank angepasst werden. Besser direkt korrekt starten.

3. Remote-Zugriff einschränken

MySQL sollte nur von localhost, also 127.0.0.1, erreichbar sein, außer du brauchst gezielt externe Zugriffe. Prüfe in der MySQL-Konfiguration my.cnf:

bind-address = 127.0.0.1

4. Rechte minimieren

Der WordPress-Datenbankbenutzer braucht nur diese Berechtigungen:

  • SELECT, INSERT, UPDATE, DELETE
  • CREATE (für Plugins, die Tabellen anlegen)
  • ALTER, INDEX (für Updates)

Er braucht nicht: DROP, GRANT, SUPER, FILE

5. SQL-Injection-Schutz

WordPress schützt automatisch vor SQL-Injection-Angriffen durch:

  • Prepared Statements in der wpdb-Klasse
  • Escaping von Benutzereingaben
  • Validierung von Datentypen

Aber: Schlecht programmierte Plugins können trotzdem anfällig sein. Setze auf etablierte, gut gewartete Plugins und halte sie aktuell.

Häufige MySQL-Fehler in WordPress beheben

„Error establishing a database connection“

Dieser Fehler tritt auf, wenn WordPress keine Verbindung zur Datenbank herstellen kann. Ursachen:

  1. Falsche Zugangsdaten in wp-config.php
    • DB_NAME, DB_USER, DB_PASSWORD, DB_HOST prüfen
    • Bei Hosting-Umzug oft das Problem
  2. MySQL-Server ist ausgefallen
    • Beim Hoster nachfragen oder Server neustarten
  3. Zu viele gleichzeitige Verbindungen
    • Ressourcenlimit erreicht (bei Shared Hosting häufig)
    • Traffic-Spike oder DDoS-Angriff
  4. Korrupte Datenbank
    • Via phpMyAdmin reparieren: Tabelle auswählen → „Reparieren“

„Database server error for query“

Ein spezifischer SQL-Befehl ist fehlgeschlagen. Meist durch:

  • Beschädigte Tabellen (reparieren mit REPAIR TABLE)
  • Fehlerhafte Plugin-Abfragen (Plugin deaktivieren)
  • Unzureichende Benutzerrechte

Datenbank ist zu groß / Backup schlägt fehl

Große Datenbanken (>1 GB) können Probleme verursachen:

Ursachen:

  • Zu viele Revisionen und Spam-Kommentare
  • WooCommerce-Logs und Session-Daten
  • Transients von Plugins

Lösungen:

  • Alte Daten mit WP-Sweep bereinigen
  • Backup-Plugin mit inkrementellen Backups nutzen (z. B. UpdraftPlus)
  • Bei großen Datenbanken: Export über WP-CLI statt phpMyAdmin
wp db export backup.sql --add-drop-table

MySQL-Versionen: Was du wissen musst

Minimale Anforderungen für WordPress

WordPress empfiehlt:

  • MySQL 8.0 oder höher
  • MariaDB 10.5 oder höher

Ältere Versionen funktionieren zwar noch (ab MySQL 5.7), werden aber nicht mehr vom Hersteller supported.

Neue Features in MySQL 8.0+

  • Fensterfunktionen (Window Functions): Komplexe Analysen direkt in SQL
  • Common Table Expressions (CTEs): Verbesserte Lesbarkeit komplexer Abfragen
  • JSON-Funktionen: Native Unterstützung für JSON-Datentypen
  • Performance-Schema: Besseres Monitoring und Debugging

Für Standard-WordPress-Websites sind die Unterschiede nicht spürbar. Bei komplexen Webshops oder Custom-Entwicklungen können moderne Features jedoch Vorteile bringen.

MySQL-Backups: So sicherst du deine Daten

Ein MySQL-Backup ist essenziell. Selbst wenn deine Dateien via FTP gesichert sind: Ohne Datenbank ist deine WordPress-Website unbrauchbar.

Backup-Methoden im Übergleich

1. phpMyAdmin-Export

  • Manuell, für kleine Datenbanken
  • Kann bei >100 MB zu Timeouts führen

2. WP-CLI

bash

wp db export backup-$(date +%Y%m%d).sql
  • Schnell und zuverlässig
  • Auch für große Datenbanken geeignet

3. Backup-Plugins

  • UpdraftPlus, automatische Backups mit Cloud-Speicher
  • BackWPup, flexible Backup-Zeitpläne
  • Duplicator, ideal für Umzüge inklusive Datenbank

4. Hoster-Backups

  • Viele Managed-Hosting-Anbieter wie Raidboxes oder WP Engine erstellen automatisch Snapshots
  • Vorteil, kein Plugin nötig und oft 1-Klick-Wiederherstellung

Backup-Best-Practices

  • 3-2-1-Regel, drei Kopien, zwei verschiedene Medien, eine Kopie extern
  • Automatisierung, täglich inkrementelle Backups und wöchentlich vollständige Backups
  • Testen, regelmäßig Wiederherstellungen prüfen
  • Vor Updates immer ein manuelles Backup vor großen WordPress- oder Plugin-Updates erstellen

MySQL-Hosting: Worauf du achten solltest

Nicht jeder Hoster liefert gute MySQL-Performance. Diese Punkte sind entscheidend.

1. MySQL-Version

Mindestens MySQL 8.0 oder MariaDB 10.5 sollte verfügbar sein.

2. Ressourcen-Limits

Shared-Hosting-Pakete begrenzen oft:

  • Maximale Datenbankgröße, zum Beispiel 1 GB
  • Maximale gleichzeitige Verbindungen, zum Beispiel 10
  • Maximale Query-Laufzeit, häufig 30 Sekunden

Bei größeren Projekten besser VPS oder Managed WordPress Hosting nutzen.

3. Standort des Datenbankservers

Bei manchen Budget-Hostern läuft MySQL auf einem separaten Server. Das erhöht die Latenz. Optimal ist eine gemeinsame Maschine für Webserver und Datenbank.

4. Backup-Infrastruktur

Automatische tägliche Datenbank-Backups sollten Standard sein. Prüfe:

  • Aufbewahrungsdauer der Backups
  • Eigenen Zugriff auf Backups
  • Möglichkeit zur 1-Klick-Wiederherstellung

Empfehlenswerte Hoster für Deutschland

Managed WordPress Hosting:

  • Raidboxes, deutscher Anbieter mit Staging und Object Cache
  • WP Engine, Premium-Infrastruktur für größere Projekte

Klassisches Webhosting:

  • ALL-INKL, solides Preis-Leistungs-Verhältnis mit deutschem Support
  • Hetzner, VPS-Lösungen mit voller Kontrolle

MySQL und DSGVO: Was du beachten musst

MySQL speichert personenbezogene Daten wie E-Mail-Adressen, Namen und IP-Adressen. Deshalb gilt die DSGVO.

Wichtige Punkte:

  • Hosting-Standort, Server innerhalb der EU
  • Verschlüsselung, Datenbankverbindungen per SSL oder TLS
  • Löschkonzept, entfernte Benutzer müssen auch aus der Datenbank gelöscht werden
  • Backup-Speicherorte, auch Backups müssen DSGVO-konform abgelegt sein

Bei deutschen Hostern wie ALL-INKL oder Hetzner ist das meist gegeben. Bei US-Hostern bestehen weiterhin rechtliche Unsicherheiten.

MySQL-Performance-Monitoring: Tools und Metriken

Wichtige Kennzahlen

Query Response Time:

  • Unter 100 ms, exzellent
  • 100 bis 300 ms, gut
  • 300 bis 1000 ms, verbesserungswürdig
  • Über 1000 ms, kritisch

Slow Query Log aktivieren

In der Datei my.cnf:

slow_query_log = 1
slow_query_log_file = /var/log/mysql/slow-queries.log
long_query_time = 2

Damit werden alle Abfragen geloggt, die länger als 2 Sekunden dauern.

Monitoring-Tools

Kostenlos:

  • Query Monitor (WordPress-Plugin) – Analysiert Abfragen direkt im Frontend
  • MySQL Performance Schema – Eingebautes Monitoring
  • Percona Monitoring and Management (PMM) – Umfassende Open-Source-Lösung

Premium:

  • New Relic – Application Performance Monitoring mit Database-Insights
  • Datadog – Cloud-Monitoring mit MySQL-Integration

Fazit: MySQL als Fundament deiner WordPress-Website

MySQL ist das unsichtbare Herzstück jeder WordPress-Installation. Ohne funktionierende Datenbank ist selbst die schönste Website nutzlos. Die gute Nachricht: MySQL ist robust, bewährt und bei richtiger Konfiguration extrem zuverlässig.

Die wichtigsten Takeaways:

  • Regelmäßige Optimierung hält die Datenbank schlank und schnell
  • Sichere Zugangsdaten und minimierte Berechtigungen schützen vor Angriffen
  • Automatisierte Backups sind Pflicht, nicht Kür
  • Modern Hosting mit MySQL 8.0+ und ausreichend Ressourcen lohnt sich
  • Monitoring-Tools helfen, Performance-Probleme frühzeitig zu erkennen

Mit dem richtigen Know-how und etwas Wartung sorgt MySQL dafür, dass deine WordPress-Website reibungslos läuft – heute und in Zukunft.

Mach deine Website fit für mehr Sichtbarkeit, Geschwindigkeit und Nutzerfreundlichkeit

Sichere dir jetzt deinen kostenlosen 30-Minuten Website-Check im Zoom.
Wir prüfen deine Seite auf SEO, Ladezeit, UX und Barrierefreiheit – und geben dir konkrete Tipps, die du sofort umsetzen kannst.

Autor: Tim Ehling
Der Autor: Tim Ehling

Seit über zwei Jahrzehnten beschäftige ich mich mit Webentwicklung – und seit 2006 ganz besonders intensiv mit WordPress. Ich entwickle und optimiere Webseiten, betreue sie langfristig durch zuverlässige Wartung und biete Schulungen für alle, die WordPress sicher und effizient nutzen möchten. Außerdem unterstütze ich Unternehmen dabei, ihre Social-Media-Kanäle und SEO-Strategien so zu verbessern, dass sie bei Kunden und Suchmaschinen gleichermaßen gut ankommen.

Schwerpunkte:
✔ Webentwicklung ✔ WordPress-Updateservice
✔ WordPress-Schulungen ✔ Social-Media-Checkups
✔ Suchmaschinenoptimierung (SEO) ✔ KI ✔ Generative Engine Optimization (GEO)

Alle Beiträge von Tim Ehling lesen Tim Ehling auf LinkedIn