Skip to content

Allt om WordPress, webbutveckling — och mer därtill

🔧 PHP missing MySQL extension error i WordPress: hur du fixar det på 10 minuter

🔧 PHP missing MySQL extension error i WordPress: hur du fixar det på 10 minuter

Du besöker din WordPress-sajt för att kolla adminpanelen, men möts i stället av en vit skärm med ett felmeddelande: "Your PHP installation appears to be missing the MySQL extension which is required by WordPress". En omstart hjälper inte, webbhotellet är tyst och sajten ligger död.

Det här felet är ingen dödsdom för din server och ingen anledning till panik. Oftast dyker det upp efter en PHP-uppdatering, en flytt av sajten till en annan VPS eller ett byte av operativsystem. WordPress tappar bryggan mellan PHP och MySQL, och du kan återställa den på 10 minuter.

Här följer en steg-för-steg-guide: från diagnostik till slutlig omladdning av konfigurationen. Alla kommandon är aktuella för PHP 8.0-8.4, servrar på Ubuntu, RedHat-kompatibla distributioner och webbhotell med cPanel.

💡 Snabb översikt:

  • Kontrollera aktuell PHP-version och aktiva tillägg via WordPress webbplatshälsa
  • Installera saknade moduler: sudo apt install php-mysql för Ubuntu eller sudo dnf install php-mysqlnd för RHEL
  • Kontrollera extension_dir-direktivet i php.ini, vid servermigrering blir sökvägen ofta felaktig
  • Aktivera mysqli och pdo_mysql via ditt webbhotells kontrollpanel (cPanel, Plesk) med två klick
  • Säkerställ att WordPress-versionerna och PHP är kompatibla: båda bör vara aktuella

1. Kontrollera PHP-version och aktiva tillägg

Den snabbaste diagnostikmetoden är WordPress inbyggda verktyg för webbplatshälsa. Gå till adminpanelen: Verktyg, Webbplatshälsa, fliken Info. Expandera avsnittet Server, här hittar du PHP-versionen. Om den är under 7.4 är det dags att uppdatera: enligt WordPress krav är den lägsta PHP-versionen för WP 6.x 7.4, och den rekommenderade är 8.0+.

Expandera nu avsnittet Databas. Om raderna för mysqli och pdo_mysql är tomma eller saknas har du hittat orsaken till felet. WordPress försöker använda ett tillägg som inte finns i PHP-bygget.

Medan du ändå är där, kontrollera avsnittet Filsystem: behörighetsproblem kan indirekt påverka inläsningen av PHP-moduler.

Om adminpanelen är otillgänglig (helt vit skärm), skapa en fil info.php i sajtens rot med koden <?php phpinfo(); och öppna den i din webbläsare. Den första raden visar den exakta PHP-versionen, och en sökning efter mysqli visar om tillägget finns.

2. Installera mysqli- och PDO MySQL-tilläggen via konsolen

Anslut till servern via SSH och kontrollera vad som är installerat:

1php -v
2php -m | grep -E 'mysqli|pdo_mysql'

Om mysqli och pdo_mysql saknas i utdatan, installera dem. Kommandona skiljer sig åt beroende på distribution.

Ubuntu / Debian:

1sudo apt update
2sudo apt install php-mysql

Paketet php-mysql drar in mysqli, pdo_mysql och drivrutinen mysqlnd, allt WordPress behöver. Om du har flera PHP-versioner, ange en specifik: php8.2-mysql, php8.3-mysql. Installationsdetaljer beskrivs i PHP mysqli-manualen.

RHEL / CentOS / AlmaLinux:

1sudo dnf update
2sudo dnf install php-mysqlnd

Efter installationen, starta om webbservern:

1sudo systemctl restart apache2
2sudo systemctl restart php8.3-fpm
3sudo systemctl restart nginx

I de flesta fall försvinner felet direkt efter omstart.

3. Kontrollera extension_dir i php.ini

Paketen är installerade, men WordPress fortsätter att klaga? Detta händer vid webbplatsmigrering: PHP-konfigurationen "flyttade med" med gamla sökvägar till den nya servern.

Öppna info.php i din webbläsare och leta reda på parametern Loaded Configuration File, det är sökvägen till den aktiva php.ini.

Sökväg till laddad PHP-konfigurationsfil i phpinfo-utdata

Leta nu upp extension_dir, katalogen från vilken PHP laddar moduler. Om värdet är tomt eller pekar på en mapp som inte finns, kommer mysqli.so inte att laddas och WordPress ser inte MySQL.

Värde för extension_dir-direktivet i phpinfo-utdata

Öppna php.ini (du vet redan sökvägen) och leta reda på raden extension_dir. Uppdatera den till det aktuella värdet. På Ubuntu 22.04/24.04 med PHP 8.3 är det vanligtvis:

1extension_dir = "/usr/lib/php/20230831"

På servrar med cPanel är sökvägen annorlunda, kontrollera det exakta värdet i info.php.

MySQL-stödsektion i phpinfo-utdata med klientbiblioteksversion

När du har gjort ändringarna, spara php.ini, starta om webbservern och se till att radera info.php, en publik phpinfo() exponerar modulversioner och absoluta serversökvägar.

4. Aktivera tillägg via webbhotellets kontrollpanel

Jobbar du via en panel istället för konsolen? De flesta webbhotellspaneler hanterar tillägg med musen:

  • cPanel: Select PHP Version, kryssrutor bredvid mysqli och pdo_mysql, spara. Passa på att byta PHP-version till en modern.
  • Plesk: Domains, din domän, PHP Settings, leta upp mysqli och pdo_mysql i tilläggslistan.
  • DirectAdmin: Extra Features, Select PHP Version, kryssa i de tillägg som behövs.
  • **SiteGround, Cloudways, **Kinsta och andra managed hosting-tjänster: PHP Extensions-sektionen i webbplatsens panel.

Efter att tilläggen har aktiverats startar panelen om PHP automatiskt, webbplatsen fungerar inom en minut.

5. Se till att WordPress- och PHP-versionerna är kompatibla

WordPress 6.x (aktuell version 2026) kräver minst PHP 7.4 och rekommenderar 8.0+. Om du kör PHP 7.0 eller 7.1 hjälper inte ens installerade tillägg: WP-kärnan förväntar sig moduler för en modern PHP-version.

Kontrollera kompatibilitet: adminpanel, Verktyg, Webbplatshälsa, Info, Server. PHP under 7.4, uppdatera:

  • Delat webbhotell: kontrollpanel (cPanel/Plesk), byt PHP till 8.2 eller 8.3.
  • VPS: uppdatera via pakethanteraren:
1sudo apt update
2sudo apt install php8.3 php8.3-mysql php8.3-xml php8.3-curl php8.3-mbstring

Efter uppdatering av PHP, uppdatera även WordPress: Dashboard, Uppdateringar, Uppdatera nu. Gamla WP-versioner refererar till mysql-tillägget, som togs bort från PHP redan 2015, därav felet.

Förresten, om ett relaterat problem: om WordPress klagar på minnesbrist under migrering har vi en genomgång om hur du ökar PHP-minnesgränsen i WordPress.

Vad mer kan gå fel

Om du har provat alla 5 metoder och felet kvarstår, här är två specialfall.

Föråldrade rader i php.ini. Efter uppdatering av PHP från 5.x till 8.x kan php.ini ha kvarvarande rader med extension=mysql.so. I PHP 8 finns inte denna fil: modulen togs bort från kärnan. Öppna php.ini och kommentera bort eller radera mysql.so, mysql.dll och libmysql. Lista över borttagna tillägg finns i PHP:s migreringsguide.

Flera PHP-versioner på servern. På VPS samexisterar ofta PHP 7.4 och PHP 8.3. Kommandot php -m visar moduler för CLI-versionen, men webbplatsen kan använda en annan, den som är konfigurerad i Apache/FPM. Kontrollera info.php: den första raden visar den exakta PHP-versionen för webben. Installera paket för den.

En video från Hostinger-teamet visar installation av tillägget via cPanel och konsolen, 4 minuter och bilden är helt klar.

⁉️🤔 Vanliga frågor

Varför nämner felet MySQL-tillägget när mysqli behövs?

Felmeddelandet har inte ändrats sedan PHP 5.x-eran. Då hette tillägget mysql, och WordPress kontrollerade specifikt efter det. I PHP 8.x togs mysql-tillägget bort helt, WordPress använder mysqli eller PDO_MySQL. Feltexten är densamma av historiska skäl. Installera paketet php-mysql: det innehåller mysqli, pdo_mysql och mysqlnd, allt WordPress behöver.

Kan man åtgärda felet utan serveråtkomst?

Ja, om sajten ligger på ett webbhotell. Logga in i kontrollpanelen (cPanel, Plesk, DirectAdmin), leta upp "Välj PHP-version" eller "PHP-inställningar", aktivera mysqli och pdo_mysql med kryssrutor. Panelen startar om PHP automatiskt, konsollåtkomst behövs inte. På webbhotell som Hostinger eller Bluehost är dessa tillägg aktiverade som standard; om felet dök upp efter ett byte av abonnemang kan supporten aktivera modulerna på ett par minuter.

Vad gör man om sajten inte fungerar efter alla åtgärder?

Kontrollera tre saker. Först: öppna info.php och kontrollera att mysqli visas med en Client API-version. Saknas avsnittet betyder det att modulen inte laddades, kontrollera extension_dir igen. Andra: starta om hela webbservern, sudo systemctl restart apache2 (eller nginx plus php-fpm). Tredje: verifiera DB_HOST, DB_NAME, DB_USER och DB_PASSWORD i wp-config.php, ibland döljer felet felaktiga databasuppgifter.

Behöver man byta till MariaDB om felet återkommer?

Nej, att byta databasserver löser inte problemet. Felet är uteslutande kopplat till PHP-tillägg. MariaDB är en MySQL-fork, och WordPress fungerar med det via samma mysqli eller PDO. De flesta webbhotell har redan bytt till MariaDB som standard, WordPress-sajter fungerar utmärkt med det.

Måste man installera just PHP 8.3?

Nej, vilken PHP 8.x-version som helst (8.0-8.4) fungerar. Huvudsaken är inte lägre än 7.4. Vi rekommenderar 8.2 eller 8.3: det är stabila grenar med aktiv säkerhetssupport under 2026, enligt det officiella PHP-schemat. PHP 8.0 och 8.1 har redan statusen enbart säkerhetsfixar, och PHP 7.4 har inte fått några patchar sedan november 2022.

Bör man få panik över det här felet

Felet "MySQL-tillägget saknas" ser skrämmande ut, men i grunden är det en signal: servern är inte fullständigt konfigurerad. PHP utan en modul för databasarbete är som en bil utan tändningsnycklar. De beskrivna metoderna täcker den absoluta majoriteten av fallen, en systemadministratör behövs inte.

Efter åtgärdandet, gör lite städning: ta bort info.php, uppdatera WordPress och tillägg till de senaste versionerna, sätt upp automatiska säkerhetskopior via UpdraftPlus eller webbhotellets panel. Då går nästa migrering eller PHP-uppdatering utan överraskningar.