Der Fehler, der plötzlich aus dem Nichts erscheint
Sie aktualisieren PHP.
Oder migrieren Ihre Website.
Oder setzen einen neuen VPS auf und installieren WordPress von Grund auf.
Alles sieht normal aus — bis es das plötzlich nicht mehr ist.
Plötzlich sehen Sie statt Ihrer Startseite diese Meldung:
In Ihrer PHP-Installation scheint die MySQL-Erweiterung zu fehlen, die von WordPress benötigt wird.
Das ist eine dieser Fehlermeldungen, die einfach klingen … es aber selten sind.
In älteren Anleitungen lautet die Erklärung fast immer gleich:
„Installieren Sie die MySQL-Erweiterung.“
In der Realität – besonders in modernen Umgebungen (PHP 8.2, 8.3, 8.4) – hat dieser Fehler meist sehr wenig mit einer fehlenden Erweiterung zu tun, sondern viel mehr damit, wie PHP konfiguriert, geladen oder zwischen verschiedenen Umgebungen getrennt wird.
Manchmal erscheint er:
- direkt nach einem Upgrade auf PHP 8.3
- nach dem Wechsel von Apache zu Nginx
- während eines Docker-Rebuilds
- nach einer Servermigration
- wenn CLI und FPM unterschiedliche PHP-Versionen verwenden
Und gelegentlich — nach
Schnelle 60-Sekunden-Diagnose
Bevor Sie etwas neu installieren oder Konfigurationsdateien ändern, halten Sie kurz inne. Wenn die Meldung In Ihrer PHP-Installation scheint die MySQL-Erweiterung zu fehlen erscheint, ist der erste Impuls meist, sofort Pakete zu installieren. In der Praxis verschlimmert das die Situation jedoch oft.
Das eigentliche Ziel ist einfach: herauszufinden, ob WordPress fehlende MySQL-Erweiterung wirklich durch eine fehlende Erweiterung verursacht wird oder ob PHP etwas anderes lädt, als Sie erwarten.
In modernen Umgebungen, besonders mit PHP 8.2 oder 8.3, hängt das Problem häufig eher mit dem Kontext als mit dem tatsächlichen Fehlen einer Erweiterung zusammen.
1. Die aktive PHP-Version überprüfen
Beginnen Sie mit den Grundlagen. Welche PHP-Version läuft tatsächlich?
Wenn Sie SSH-Zugriff haben:
php -v
Dies zeigt die CLI-Version an. Das ist hilfreich, aber nicht endgültig. Ihr Webserver kann eine ganz andere PHP-Version verwenden.
Um die Weblaufzeit zu bestätigen, erstellen Sie eine temporäre Datei namens info.php im WordPress-Stammverzeichnis:
Öffnen Sie die Datei im Browser und prüfen Sie:
- die PHP-Version
- den Pfad der Loaded Configuration File
- die Server-API (Apache, FPM/FastCGI usw.)
Es kommt überraschend häufig vor, dass im CLI PHP 8.3 angezeigt wird, während der Browser PHP 8.1 meldet. In einer solchen Situation hat php fehlende mysql-erweiterung wordpress möglicherweise gar nichts mit MySQL zu tun. Es kann schlicht die falsche PHP-Instanz sein.
2. Prüfen, ob MySQLi oder PDO_MySQL geladen ist
Suchen Sie in der Ausgabe von phpinfo() nach:
mysqlipdo_mysql
Wenn keines davon erscheint, unterstützt PHP tatsächlich kein MySQL und die Meldung In Ihrer PHP-Installation scheint die MySQL-Erweiterung zu fehlen ist technisch gesehen korrekt.
Wenn sie jedoch angezeigt werden, wird die Situation interessanter. WordPress kann trotzdem einen Fehler fehlende mysqli-erweiterung wordpress anzeigen, obwohl die Erweiterung vorhanden ist. Das weist meist eher auf ein Konfigurationsproblem als auf eine fehlgeschlagene Installation hin.
Über SSH können Sie außerdem Folgendes ausführen:
php -m | grep -i mysql
Auch dies überprüft nur die CLI-Module. Der Webserver kann eine andere Reihe von Erweiterungen laden.
3. Die geladene php.ini-Datei überprüfen
Suchen Sie auf der Seite phpinfo() nach der Zeile:
Loaded Configuration File
Stellen Sie sicher, dass der Pfad zur PHP-Version passt, die Ihr Webserver tatsächlich verwendet.
Suchen Sie anschließend nach:
extension_dir
Wenn extension_dir auf ein falsches Verzeichnis oder auf einen anderen PHP-Build verweist, können Erweiterungen wie mysqli oder pdo_mysql zwar auf der Festplatte vorhanden sein, aber zur Laufzeit nicht geladen werden. In solchen Fällen bedeutet mysql-erweiterung fehler wordpress beheben nicht, etwas Neues zu installieren. Es bedeutet, PHP mit dem richtigen Erweiterungsverzeichnis abzugleichen.
In diesem Stadium ergeben sich in der Regel drei mögliche Ursachen:
- Die Erweiterung ist überhaupt nicht installiert.
- Die Erweiterung ist installiert, aber für die aktive Laufzeitumgebung nicht aktiviert.
- CLI-PHP und Web-PHP verwenden unterschiedliche Konfigurationen.
Erst nachdem Sie festgestellt haben, welches Szenario zutrifft, sollten Sie fortfahren. Andernfalls besteht die Gefahr, dass Sie das falsche Problem lösen.
Warum dieser Fehler in modernen PHP-Umgebungen irreführend ist
Auf den ersten Blick wirkt die Meldung In Ihrer PHP-Installation scheint die MySQL-Erweiterung zu fehlen sehr eindeutig. Sie vermittelt den Eindruck, dass etwas fehlt und dass eine Installation das Problem sofort lösen wird.
Im Jahr 2026 ist diese Annahme jedoch häufig falsch.
Die ursprüngliche mysql-Erweiterung ist seit Jahren veraltet und wurde aus modernen PHP-Versionen vollständig entfernt. WordPress verwendet sie nicht mehr. Stattdessen nutzt es mysqli oder pdo_mysql, die beide standardmäßig in PHP-8.x-Builds enthalten sind.
Wenn WordPress heute einen Fehler wordpress fehlende mysql-erweiterung anzeigt, bedeutet das daher selten „MySQL-Unterstützung wurde nicht installiert“. Häufiger weist es darauf hin, dass PHP das richtige Modul zur Laufzeit nicht laden konnte.
Dieser Unterschied ist entscheidend.
Lesen Sie auch: So verbessern Sie die Time to First Byte (TTFB) Ihrer WordPress-Website

MySQL vs. MySQLi: Die Namensfalle
Die Fehlermeldung verweist weiterhin auf eine „MySQL-Erweiterung“, was viele Entwickler dazu bringt, nach dem falschen Paket zu suchen. Sie versuchen, mysql zu installieren, obwohl dieses Modul in PHP 8.2 oder 8.3 gar nicht mehr existiert.
Was WordPress tatsächlich benötigt, ist:
mysqli- oder
pdo_mysql
Wenn keines davon für die aktive PHP-Laufzeit verfügbar ist, können Fehlermeldungen wie fehlende mysqli-erweiterung wordpress oder php fehlende mysql-erweiterung wordpress erscheinen.
Die Formulierung der Fehlermeldung hat sich jedoch nicht parallel zu PHP weiterentwickelt. Genau hier beginnt die Verwirrung.
PHP 8.x und das Problem des Laufzeitkontexts
Moderne PHP-Setups sind selten einfach.
Sie können beispielsweise Folgendes haben:
- mehrere installierte PHP-Versionen
- separate PHP-FPM-Pools
- containerisierte Deployments
- individuell kompilierte PHP-Builds
- unterschiedliche
php.ini-Dateien für CLI und Web
In solchen Umgebungen bedeutet mysql-erweiterung fehler wordpress beheben nicht, einfach ein Modul herunterzuladen. Es geht darum sicherzustellen, dass die richtige PHP-Laufzeit die richtige Erweiterung aus dem richtigen Verzeichnis lädt.
Zum Beispiel:
- Im CLI kann
mysqlials geladen angezeigt werden - Die Web-Laufzeitumgebung jedoch nicht
- Oder PHP-FPM verweist auf ein veraltetes
extension_dir - Oder bei einem Container-Neuaufbau wurde
pdo_mysqlnicht installiert
All diese Szenarien lösen dieselbe Fehlermeldung aus.
Deshalb ist das blinde Installieren von Paketen selten der richtige erste Schritt. Das eigentliche Problem liegt fast immer in der Abstimmung der Konfiguration.
WordPress, PHP und die Datenbank müssen innerhalb desselben Konfigurationskontexts arbeiten. Wenn sich eine Komponente verschiebt – besonders bei einem Upgrade auf PHP 8.3 – bricht das System still im Hintergrund, und WordPress zeigt diese generische Fehlermeldung an.
Wenn es gar nicht an der Erweiterung liegt
Es gibt noch eine weitere Nuance, die leicht übersehen wird.
Manchmal ist die Erweiterung korrekt geladen, aber WordPress kann dennoch keine Verbindung zur Datenbank herstellen. In solchen Fällen erscheint die Meldung, weil die Datenbankschicht bereits früh im Bootstrap-Prozess fehlschlägt.
Das kann passieren, wenn:
- die Datenbank-Zugangsdaten falsch sind
- sich der MySQL-Socket-Pfad geändert hat
- MariaDB über TCP läuft, während PHP einen Unix-Socket erwartet
- der Datenbankdienst nicht läuft
- SELinux den Zugriff blockiert
Aus Sicht von WordPress schlägt einfach die Datenbankverbindung fehl. Die Standardannahme ist dann eine fehlende MySQL-Unterstützung.
Mit anderen Worten: Die Fehlermeldung beschreibt nicht immer die eigentliche Ursache. Sie beschreibt nur das Symptom.
Wenn man diesen Kontext versteht, ändert sich auch der Ansatz zur Fehlersuche. Statt Erweiterungen neu zu installieren, beginnt man die gesamte Ausführungskette nachzuvollziehen.
Und genau dort beginnt die eigentliche Diagnose.
Lesen Sie auch: So leeren Sie den WordPress-Cache, wenn Änderungen nicht angezeigt werden
Wo die Verbindung unterbrochen wird
Wenn WordPress die Meldung In Ihrer PHP-Installation scheint die MySQL-Erweiterung zu fehlen anzeigt, schlägt irgendwo in der Ausführungskette ein Schritt fehl. Am einfachsten lässt sich das verstehen, wenn man sich diese Kette direkt ansieht.
Auf einer hohen Ebene sieht der Ablauf so aus:
WordPress Core
↓
PHP-Laufzeitumgebung (Web SAPI / PHP-FPM / Apache-Modul)
↓
MySQL-Erweiterung (mysqli oder pdo_mysql)
↓
Datenbank-Engine (MySQL 8 / MariaDB)
Wenn ein Glied dieser Kette nicht korrekt zusammenpasst, kann WordPress die Datenbankschicht nicht initialisieren. Das Ergebnis kann ein Fehler wordpress fehlende mysql-erweiterung sein, selbst wenn die Erweiterung technisch vorhanden ist.
Schauen wir uns an, an welchen Stellen diese Kette normalerweise unterbrochen wird.
1. Die Erweiterung ist nicht installiert
Dies ist das einfachste Szenario. PHP wurde ohne mysqli oder pdo_mysql installiert.
Das kann passieren, wenn:
- PHP aus dem Quellcode ohne
mysqlndkompiliert wurde - minimale Container-Images verwendet werden
- PHP manuell auf einem VPS ohne das MySQL-Paket installiert wurde
In diesem Fall werden mysqli oder pdo_mysql weder in php -m noch in phpinfo() angezeigt. Die Fehlermeldung ist dann korrekt.
2. Die Erweiterung ist installiert, aber nicht aktiviert
Hier existiert die Erweiterung auf dem System, wird aber nicht geladen.
Häufige Gründe:
extension=mysqlifehlt in derphp.ini- die Erweiterung wurde kompiliert, aber nicht aktiviert
- für CLI und Web werden unterschiedliche
php.ini-Dateien verwendet - ein falsches
extension_dirist konfiguriert
In diese Kategorie fallen viele Fälle von php fehlende mysql-erweiterung wordpress. Entwickler sehen mysqli.so im Erweiterungsverzeichnis und gehen davon aus, dass alles in Ordnung ist. In Wirklichkeit lädt PHP-FPM die Erweiterung jedoch nie.
3. CLI-PHP und Web-PHP sind unterschiedlich
Dies ist eine der häufigsten Ursachen in modernen Setups.
Sie führen aus:
php -m | grep -i mysql
Die Ausgabe zeigt mysqli.
Alles scheint korrekt zu sein.
Der Webserver verwendet jedoch möglicherweise eine völlig andere PHP-Version. Diese Version hat eventuell keine MySQL-Unterstützung aktiviert.
In dieser Situation liegt das Problem nicht am Fehlen der MySQL-Unterstützung, sondern an einer Laufzeit-Inkonsistenz.
Das passiert besonders häufig nach:
- einem Upgrade auf PHP 8.3
- dem Wechsel des Hosting-Panels
- der Aktivierung von MultiPHP in cPanel
- der Migration von Apache zu Nginx
Die CLI- und Web-Umgebungen driften dabei unbemerkt auseinander.
4. Die Erweiterung wird geladen, aber die Datenbankschicht schlägt fehl
Dies ist der subtilere Fall.
mysqli erscheint in phpinfo().
PHP ist korrekt.
Die Konfigurationspfade sehen ebenfalls richtig aus.
Trotzdem zeigt WordPress weiterhin Meldungen vom Typ mysql-erweiterung fehler wordpress beheben an.
Hier liegt der Fehler weiter unten in der Ausführungskette:
- falscher Socket-Pfad
- falscher Host in
wp-config.php - der Datenbankdienst läuft nicht
- MariaDB wurde aktualisiert und hat Standardwerte geändert
- Berechtigungsprobleme bei der Socket-Datei
Aus Sicht von WordPress schlägt die Verbindung während des Bootstrap-Prozesses fehl. Die Fehlermeldung geht davon aus, dass die Erweiterungsschicht dafür verantwortlich ist.
Technisch gesehen ist sie es jedoch nicht.
5. Containerisierte und Cloud-Umgebungen
In Docker- oder Cloud-Deployments kann der Fehler bereits während der Build-Phase entstehen.
Zum Beispiel:
- Das Basis-Image enthält kein
pdo_mysql docker-php-ext-install mysqli pdo_mysqlwurde übersprungen- Ein Rebuild hat die PHP-Schicht ersetzt, aber nicht die Konfiguration
- Umgebungsvariablen haben die Datenbankverbindung verändert
In solchen Fällen kann wordpress fehlende mysql-erweiterung nach einem scheinbar unabhängigen Infrastruktur-Update auftreten.
Deshalb tritt dieser Fehler selten isoliert auf. Meist ist er kontextabhängig.
Wenn Sie die gesamte Kette verstehen, behandeln Sie das Problem nicht mehr als einfache Installationsfrage. Stattdessen identifizieren Sie, welche Ebene sich verändert hat.
Diese Perspektive macht die Lösung methodisch statt reaktiv.
Die tatsächlichen Ursachen hinter dem MySQL-Erweiterungsfehler
An diesem Punkt haben Sie wahrscheinlich bereits erkannt, wo die Kette unterbrochen wird. Jetzt stellt sich die praktische Frage: Was genau muss korrigiert werden?
Die Antwort hängt vollständig von Ihrer Umgebung ab. Ein Shared-Hosting-Setup verhält sich ganz anders als ein eigener VPS oder ein Docker-Deployment. Der sichtbare Fehler kann identisch sein, aber die zugrunde liegende Ursache unterscheidet sich.
Gehen wir die häufigsten Szenarien durch.
Shared-Hosting-Umgebungen
Beim Shared Hosting, besonders mit cPanel oder ähnlichen Control Panels, hängt das Problem oft mit dem Wechsel der PHP-Version zusammen.
Viele Hosting-Anbieter erlauben mehrere parallele PHP-Versionen. Sie können im Panel auf PHP 8.3 aktualisieren, während die Domain weiterhin mit einem älteren Handler verbunden ist.
Wenn auf Shared Hosting der Fehler wordpress fehlende mysql-erweiterung erscheint, prüfen Sie:
- Welche PHP-Version der Domain zugewiesen ist
- Ob
mysqliundpdo_mysqlin der Liste der PHP-Erweiterungen aktiviert sind - Ob der MultiPHP Manager den richtigen Handler verwendet
In cPanel bedeutet das normalerweise:
- Select PHP Version öffnen
- Überprüfen, ob PHP 8.2 oder 8.3 aktiv ist
- Sicherstellen, dass
mysqliundmysqlndaktiviert sind
Nach dem Speichern aktualisieren Sie die Website. Wenn die Runtime korrekt gewechselt wurde, verschwindet der Fehler sofort.
Falls nicht, ist die Domain möglicherweise noch einem anderen PHP-Pool zugeordnet.
Genau hier verhindert eine professionelle laufende WordPress-Wartung eine unbemerkte Konfigurationsabweichung. Kleine Versionsunterschiede werden leicht übersehen – bis sie schließlich die Produktivumgebung beeinträchtigen.
VPS- und Dedicated-Server-Setups (Ubuntu / Debian)
In VPS-Umgebungen ist das Problem meist klarer erkennbar.
Wenn PHP ohne MySQL-Unterstützung installiert wurde, können Sie dies prüfen:
php -m | grep -i mysql
Wenn nichts angezeigt wird, installieren Sie das erforderliche Modul:
sudo apt update
sudo apt install php-mysql
Starten Sie anschließend den entsprechenden Dienst neu:
sudo systemctl restart php8.3-fpm
Oder, wenn Sie Apache verwenden:
sudo systemctl restart apache2
Doch genau hier machen viele einen Fehler.
Sie starten die falsche PHP-FPM-Version neu.
Wenn mehrere Versionen installiert sind, stellen Sie sicher, dass Sie genau den Dienst neu starten, den Ihr Webserver verwendet. Wenn Sie php8.2-fpm neu starten, während Nginx auf php8.3-fpm verweist, ändert sich nichts.
Allein dieser Versionskonflikt kann den Fehler php missing mysql extension wordpress auslösen – selbst wenn die Erweiterung eigentlich vorhanden ist.
Nginx + PHP-FPM Fehlkonfiguration
In modernen Setups, besonders nach PHP-Upgrades, verweisen Konfigurationsdateien manchmal noch auf ältere Sockets.
Zum Beispiel:
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
Wenn das System auf PHP 8.3 aktualisiert wurde, Nginx aber weiterhin auf den 8.1-Socket zeigt, lädt WordPress die falsche Runtime.
In diesem Szenario:
- Die CLI zeigt
mysqli - PHP 8.3 unterstützt MySQL
- Der Webserver verwendet weiterhin PHP 8.1 ohne diese Unterstützung
Der Fehler erscheint und wirkt wie eine fehlende Erweiterung.
Tatsächlich handelt es sich jedoch um ein Problem mit der Konfigurationszuweisung.
Docker- und containerisierte Deployments
Containerisierte Umgebungen bringen eine zusätzliche Ebene der Komplexität mit sich.
Wenn Sie aus dem offiziellen PHP-Image bauen, sind MySQL-Erweiterungen nicht immer standardmäßig enthalten. Sie müssen sie während des Builds ausdrücklich hinzufügen:
RUN docker-php-ext-install mysqli pdo pdo_mysql
Wenn diese Zeile entfernt, übersprungen oder während eines Rebuilds überschrieben wird, kann beim nächsten Deployment plötzlich der Fehler your php installation appears to be missing the mysql extension auftreten.
Das passiert häufig nach:
- Upgrades des Base-Images
- dem Wechsel von Debian- zu Alpine-Images
- Änderungen in der CI/CD-Pipeline
Die Erweiterung wurde nie manuell „entfernt“. Der Container wurde einfach ohne sie neu gebaut.
In komplexen Umgebungen mit API-Schichten, SaaS-Systemen oder KI-Integration in modernen Webplattformen treten solche Nebenwirkungen bei Rebuilds häufig auf. WordPress ist dabei oft nur eine Komponente innerhalb einer größeren Architektur.
Mehrere PHP-Installationen
Dieses Thema verdient besondere Aufmerksamkeit.
Viele Server betreiben gleichzeitig:
/usr/bin/php/usr/local/bin/php- mehrere FPM-Pools
- separate Pools pro Domain
Sie können bestätigen, dass mysqli global installiert ist, doch der aktive Pool kann eine andere php.ini verwenden.
Genau hier wird Erfahrung in der professionellen WordPress-Webentwicklung entscheidend. Um herauszufinden, welche PHP-Runtime tatsächlich die Anfrage verarbeitet, müssen die Pool-Konfigurationsdateien geprüft werden – nicht nur die installierten Module.
Wenn Multi-Version-Setups auseinanderdriften, interessiert WordPress der Grund nicht. Es meldet einfach eine fehlende Erweiterung.
Über all diese Szenarien hinweg bleibt das Muster gleich. Das Problem besteht selten darin, etwas Neues zu installieren. Es geht vielmehr darum sicherzustellen, dass die richtige Runtime die richtige Erweiterung im richtigen Konfigurationskontext lädt.
Je komplexer die Infrastruktur, desto subtiler kann die Fehlkonfiguration sein.
Lesen Sie auch: 5 Schritte zum Hinzufügen von 301-Weiterleitungen zu WordPress über htaccess (praktischer Leitfaden)
Fehleranalyse-Tabelle: Symptom → Ursache → Lösung
Nachfolgend finden Sie eine praktische Übersicht zu den häufigsten Varianten des Fehlers your php installation appears to be missing the mysql extension.
| Symptom | Wahrscheinliche Ursache | Was prüfen | Praktische Lösung |
|---|---|---|---|
php -m zeigt keine MySQL-Module | MySQL-Erweiterung nicht installiert | Modulliste der CLI | php-mysql installieren oder mysqli / pdo_mysql aktivieren |
php -m zeigt mysqli, der Browser jedoch nicht | Unterschied zwischen CLI- und Web-PHP | phpinfo() mit CLI-Version vergleichen | PHP-FPM-Version mit dem Webserver abgleichen |
mysqli in phpinfo() sichtbar, aber WordPress funktioniert nicht | Falsches extension_dir | extension_dir in php.ini | Verzeichnispfad korrigieren und FPM neu starten |
| Fehler nach einem PHP-Upgrade | Nginx oder Apache verweist auf alten Socket | Webserver-Konfiguration | fastcgi_pass oder PHP-Handler aktualisieren |
| Fehler nach einer Migration | PHP-Version wurde stillschweigend gewechselt | Hosting-Panel / MultiPHP | Die korrekte PHP-Version der Domain erneut zuweisen |
| Fehler in Docker | Erweiterung beim Build nicht installiert | Dockerfile | docker-php-ext-install mysqli pdo_mysql hinzufügen und Container neu bauen |
| Datenbankverbindung schlägt weiterhin fehl | Socket- oder Host-Konflikt | wp-config.php DB_HOST | Host auf den richtigen TCP- oder Socket-Pfad anpassen |
| Fehler erscheint zufällig | Mehrere PHP-Pools aktiv | FPM-Pool-Konfigurationen | Aktiven Pool prüfen und den richtigen Dienst neu starten |
Diese Tabelle zeigt die typischen Ursachen für den Fehler wordpress missing mysql extension in modernen PHP-8.x-Umgebungen.
Beachten Sie dabei einen wichtigen Punkt.
In mehr als der Hälfte dieser Szenarien ist die Erweiterung technisch vorhanden. Das Problem ist kontextbedingt – falsche Runtime, falsche Konfigurationsdatei oder der falsche neu gestartete Dienst.
Deshalb bringt das blinde Neuinstallieren von Paketen oft keinerlei Lösung.
Wenn keiner der oben genannten Punkte zu Ihrem Fall passt, lohnt es sich, das tatsächliche Verhalten im System zu analysieren statt nur theoretische Annahmen zu prüfen.
Schauen wir uns an, wie das in der Praxis aussieht.
Praxisbeispiel: Nach dem Upgrade auf PHP 8.3
Eine typische Situation sieht so aus.
Ein Server läuft mit PHP 8.1 ohne Probleme.
Alles funktioniert.
Der Administrator aktualisiert auf PHP 8.3.
Unmittelbar nach dem Upgrade zeigt WordPress:
your php installation appears to be missing the mysql extension
Die erste Vermutung ist meist, dass PHP 8.3 die MySQL-Unterstützung entfernt hat.
Das ist jedoch nicht der Fall.
Was in vielen dieser Fälle tatsächlich passiert ist:
- PHP 8.3 wurde korrekt installiert
mysqliwurde kompiliert und ist verfügbar- Nginx verweist weiterhin auf den alten 8.1-Socket
- PHP-FPM 8.3 wurde nie neu gestartet
Aus Sicht von WordPress ist die Datenbankebene während des Bootstraps fehlgeschlagen. Daraufhin erscheint die generische Fehlermeldung.
Bei CoDiCo haben wir dieses Muster bei Versionsumstellungen immer wieder beobachtet. Die Lösung bestand nur selten darin, etwas Neues zu installieren. In den meisten Fällen ging es darum, die Runtime-Ebenen nach dem Upgrade korrekt aufeinander abzustimmen.
Sobald der Webserver auf den richtigen FPM-Pool verwies und der Dienst korrekt neu gestartet wurde, verschwand der Fehler sofort.
Unerwartete Sonderfälle
Es gibt Situationen, in denen oberflächlich alles korrekt aussieht. mysqli ist in phpinfo() sichtbar. Die PHP-Version entspricht der Version, die der Server ausführen soll. Die Datenbankzugangsdaten in wp-config.php wirken korrekt. Und dennoch meldet WordPress weiterhin your php installation appears to be missing the mysql extension.
An diesem Punkt liegt das Problem meist tiefer im System-Stack.
Eine der am häufigsten übersehenen Ursachen ist ein Socket-Mismatch. Auf vielen Linux-Systemen kommunizieren MySQL oder MariaDB über eine Unix-Socket-Datei statt über TCP. Wenn sich der Socket-Pfad während eines Upgrades ändert, kann PHP zwar weiterhin mysqli laden, aber keine Verbindung herstellen. WordPress zeigt dann eine generische wordpress missing mysql extension-Meldung an, obwohl die Erweiterung selbst einwandfrei funktioniert.
Ein weiteres subtileres Problem tritt nach MariaDB-Upgrades auf. Standard-Authentifizierungsmethoden oder Verbindungseinstellungen können sich unbemerkt ändern. Wenn PHP eine bestimmte Konfiguration erwartet, der Datenbankserver jedoch nun eine andere verlangt, schlägt der Handshake frühzeitig fehl. Aus Sicht der Anwendung wirkt es wie fehlende MySQL-Unterstützung. In Wirklichkeit handelt es sich um ein Authentifizierungs- oder Transportproblem.
Auch SELinux kann eingreifen. In gehärteten Systemen können Sicherheitsrichtlinien verhindern, dass PHP auf den Datenbank-Socket zugreift – selbst wenn mysqli aktiviert und korrekt geladen ist. Die Erweiterung ist vorhanden, aber die Runtime kann sie nicht verwenden. Die resultierende Fehlermeldung ist irreführend, technisch jedoch konsistent mit einer fehlgeschlagenen Datenbankinitialisierung.
Selbst kompilierte PHP-Builds bringen eine weitere Variable ins Spiel. Wenn PHP ohne mysqlnd kompiliert wurde oder gegen eine inkompatible Client-Bibliothek gebaut ist, kann das Modul zwar installiert erscheinen, sich aber unvorhersehbar verhalten. Solche Fälle sind selten, aber wenn sie auftreten, greifen die üblichen Troubleshooting-Schritte nicht, weil das Problem strukturell bedingt ist.
Container-Orchestrierung fügt eine weitere Ebene der Komplexität hinzu. In verteilten Umgebungen kann der in wp-config.php definierte Datenbank-Host innerhalb des Container-Netzwerks anders aufgelöst werden. Ein falsch konfigurierter Service-Name oder eine fehlerhafte Umgebungsvariable kann die Verbindung unterbrechen, und WordPress meldet erneut php missing mysql extension wordpress, obwohl die Erweiterung im Container korrekt geladen wird.
Das Muster in all diesen Sonderfällen ist konsistent. Die sichtbare Fehlermeldung beschreibt selten die eigentliche Ursache. Sie signalisiert lediglich, dass WordPress seine Datenbankschicht nicht initialisieren konnte, und die Erweiterungsebene ist dabei nur die erste naheliegende Annahme.
Sobald Sie dieses Niveau der Fehlersuche erreichen, geht es nicht mehr darum, Pakete zu installieren. Stattdessen wird es zu einer Aufgabe, den Ausführungsfluss nachzuverfolgen, die Konfigurationsabstimmung zu überprüfen und sicherzustellen, dass jede Ebene exakt so miteinander kommuniziert, wie es vorgesehen ist.
Die gute Nachricht ist: Sobald der tatsächliche Fehlerpunkt identifiziert ist, ist die Lösung meist unkompliziert. Die Schwierigkeit liegt nicht in der Korrektur selbst, sondern darin, die richtige Ebene zu diagnostizieren.
Im nächsten Schritt fassen wir alles in einer abschließenden Diagnose-Checkliste zusammen, damit Sie jede Ebene systematisch überprüfen können, bevor Sie weitere Maßnahmen ergreifen.
Lesen Sie auch: Einfache und verständliche Anleitung zum Bearbeiten der functions.php-Datei in WordPress
Abschließende Diagnose-Checkliste
Wenn Sie dieses Problem sauber und systematisch lösen möchten, ohne sich durch zufällige Lösungsversuche zu arbeiten, verwenden Sie die folgende Checkliste. Sie ist speziell für den Fall gedacht, dass WordPress weiterhin meldet your php installation appears to be missing the mysql extension, während die tatsächliche Ursache möglicherweise im Runtime-Kontext verborgen liegt.
- Überprüfen Sie die PHP-Version im Browser über
phpinfo(), nicht nur per SSH. Wenn sich CLI- und Web-Version unterscheiden, debuggen Sie nicht dieselbe Runtime. - Prüfen Sie in
phpinfo(), obmysqlioderpdo_mysqlaufgeführt ist. Wenn keines davon erscheint, fehlt die Erweiterung tatsächlich. - Überprüfen Sie den Pfad der Loaded Configuration File. Stellen Sie sicher, dass die
php.ini, die Sie bearbeiten, auch wirklich von der Web-Runtime geladen wird. - Suchen Sie nach
extension_dirund bestätigen Sie, dass es zum aktiven PHP-Build passt. Ein falsches Verzeichnis kann das Laden von Modulen stillschweigend verhindern. - Wenn Sie PHP-FPM verwenden, prüfen Sie, welcher Pool und welcher Socket vom Webserver genutzt wird. Nach Upgrades verweisen Nginx- oder Apache-Konfigurationen häufig noch auf ältere Sockets.
- Starten Sie den richtigen Dienst neu. Einfach irgendeinen PHP-FPM-Dienst neu zu starten reicht nicht, wenn mehrere Versionen vorhanden sind. Die aktive Version muss neu gestartet werden.
- Wenn die Erweiterung geladen ist, der Fehler jedoch weiterhin besteht, überprüfen Sie die Datenbankverbindung: Dienststatus, Host-Typ (Socket vs. TCP) und ob sich der Socket-Pfad geändert hat.
- Überprüfen Sie erneut
wp-config.phpaufDB_HOST. In Container-Umgebungen ist der korrekte Host oft ein Service-Name stattlocalhost. - Wenn Ihr System SELinux oder gehärtete Sicherheitsrichtlinien verwendet, prüfen Sie, ob PHP Zugriff auf den Datenbank-Socket oder den Netzwerkport hat.
- Entfernen Sie die Datei
info.php, sobald Sie fertig sind. Sie öffentlich zugänglich zu lassen stellt ein Sicherheitsrisiko dar.
Wenn Sie jeden Punkt oben abhaken können und die Website dennoch nicht funktioniert, befinden Sie sich nicht mehr im Bereich „fehlende Erweiterung“. In diesem Stadium handelt es sich eher um ein tieferliegendes Infrastruktur- oder Build-Konsistenzproblem und nicht um ein WordPress-Update-Problem.
FAQ
Warum meldet WordPress eine fehlende MySQL-Erweiterung, obwohl MySQLi installiert ist?
Weil es sich um eine ältere Formulierung handelt. WordPress benötigt mysqli oder pdo_mysql, doch wenn PHP diese im aktiven Runtime-Kontext nicht lädt oder die Runtime-Umgebung nicht korrekt übereinstimmt, kann WordPress trotzdem den Fehler wordpress missing mysql extension anzeigen.
Unterstützt PHP 8.3 weiterhin MySQL?
Ja. PHP 8.3 unterstützt MySQL über mysqli und pdo_mysql. Wenn der Fehler php missing mysql extension wordpress erscheint, liegt die Ursache meist in einer Konfigurations- oder Runtime-Fehlausrichtung und nicht daran, dass PHP selbst keine MySQL-Unterstützung mehr bietet.
Wie aktiviere ich MySQLi in PHP?
Auf den meisten Systemen aktivieren Sie sie, indem Sie das entsprechende Paket installieren (oft php-mysql) oder das Modul im Hosting-Panel aktivieren. Unter Windows kann es erforderlich sein, extension=mysqli in der php.ini zu entkommentieren. Wichtig ist, die Erweiterung für die PHP-Runtime zu aktivieren, die Ihr Webserver tatsächlich verwendet.
Warum zeigt php -m mysqli an, aber WordPress funktioniert trotzdem nicht?
Weil php -m die CLI-Runtime überprüft. Ihr Webserver kann jedoch eine andere PHP-Version, eine andere php.ini oder einen anderen PHP-FPM-Pool verwenden. Das ist eine der häufigsten Ursachen hinter Situationen mit fix mysql extension error wordpress.
Kann dieser Fehler durch falsche Datenbankzugangsdaten verursacht werden?
Ja. Wenn WordPress bereits während der Initialisierung der Datenbank scheitert, kann die Fehlermeldung irreführend sein. Falsche Zugangsdaten, ein ausgefallener Datenbankdienst oder ein Socket-Mismatch können ähnliche Symptome auslösen – selbst wenn mysqli geladen ist.
Wird dieses Problem normalerweise durch ein WordPress-Update behoben?
Manchmal, aber in modernen Setups eher selten. In PHP-8.x-Umgebungen hängt dieser Fehler häufiger mit der Serverkonfiguration zusammen als mit veralteten WordPress-Core-Dateien.
Abschließender Hinweis
In den meisten realen Fällen ist your php installation appears to be missing the mysql extension weder ein WordPress-Problem noch ein „PHP neu installieren“-Problem. Es ist ein Hinweis darauf, dass eine Ebene in der PHP-Runtime-Kette nicht korrekt synchronisiert ist. Sobald Sie feststellen, welche Runtime tatsächlich die Anfrage verarbeitet, und dort bestätigen, dass mysqli oder pdo_mysql geladen ist, lässt sich das Problem meist direkt beheben.
Bei CoDiCo zeigen die schnellsten Lösungen fast immer, dass es sich lohnt, zuerst die Runtime-Abstimmung zu überprüfen – und nicht sofort weitere Pakete zu installieren.


