”Fel med att upprätta en databasanslutning” är förmodligen ett av de vanligaste felen som WordPress-användare stöter på. Det är nära knutet till White Screen of Death (WSOD). Det här felet betyder att din webbplats inte längre kommunicerar eller har tillgång till din WordPress-databas; så hela din webbplats går ner.

Du bör lösa detta fel omedelbart, eftersom det kan ha en direkt påverkan på din försäljning, trafik och analys.

Men oroa dig inte, idag kommer vi att gå igenom några vanliga scenarier som orsakar detta fel och några enkla sätt att få igång din webbplats på nolltid.

Kolla in vår videoguide om hur man åtgärdar ”Fel vid upprättande av en databasanslutning”

Så här fungerar det: all information på din WordPress-webbplats, såsom inläggsdata, siddata, metainformation, plugin-inställningar, inloggningsinformation osv. lagras i din MySQL-databas. Den enda data som inte lagras där är medieinnehåll som bilder och dina tema-filer / plugin-filer / och kärnfiler som index.php, wp-login.php osv.

När någon besöker din webbplats kör PHP koden på sidan, efterfrågar informationen från databasen och visar den sedan för besökaren i besökarens webbläsare.

Om detta inte fungerar korrekt kan du möta meddelandet ”fel vid upprättande av en databasanslutning”, som du ser nedan. Hela sidan är tom eftersom inga data kan hämtas för att återge sidan, och anslutningen fungerar inte som den ska. Detta bryter inte bara frontend på din webbplats, utan kommer även att hindra dig från att komma åt din WordPress-instrumentpanel.

Meddelandet
Meddelandet ”Fel vid upprättande av en databasanslutning” i Chrome

Det kan dock hända att besökarna inte möter det här felet på frontend direkt. Detta beror på att din webbplats troligtvis fortfarande serveras från cachelagringen tills den löper ut. Hos Kinsta, cachelagras alla WordPress-webbplatser i en timme som standard. Så om en webbplats fortfarande serveras från cachen, kan den verka funktionell för en besökare.

Kinsta’s supportteam kan öka varaktigheten på din cachelagring till, säg, en timme eller till och med en vecka om du vill. Om du har en webbplats som inte ändras så ofta kan detta öka webbplatsens prestanda eftersom den inte behöver få fatt i nya filer så ofta efter att cachen löper ut. Och när det gäller fallet som visas ovan, skulle webbplatsens frontend i de flesta fall (såvida du inte har ett skript eller en del av din webbplats som bryter cacheminnet) stanna uppe mycket längre.

När besökare försöker komma åt din webbplats medan det här felet inträffar genereras en 500 HTTP-statuskod i dina loggar. Samma statuskod visas när det uppstår ett ”internt serverfel”. Detta betyder att något gick fel på servern och att den begärda resursen inte levererades. När allt fungerar korrekt kommer din webbplats att generera en 200 HTTP-statuskod, vilket betyder att allt är bra.

Kinstas kunder kan granska webbplatsens loggar i MyKinsta-instrumentpanelen:

”Fel vid upprättande av en databasanslutning” 500-fel avslöjades i access.log.

Om du är en Kinsta-klient kan du även titta på 500-feluppdelningsrapporten i MyKinsta analytics för att se om detta har varit ett återkommande problem.

500 fel-uppdelning
500 fel-uppdelning

Vad orsakar ”Fel vid upprättande av en databasanslutning”?

Så varför sker detta? Tja, vi har listat några vanliga orsaker nedan. Och oroa dig inte, vi kommer att gå igenom var och en av dessa mer djupgående så att du får veta hur du fixar dem. Du kan vanligtvis lösa det här felet på under 15 minuter.

Felaktiga inloggningsuppgifter för databasen

Din WordPress-webbplats använder en separat inloggningsinformation för att ansluta till sin MySQL-databas.

Skadad databas

Med så många rörliga delar av teman, plugins och användare som ständigt tar bort och installerar dem, blir databaser ibland skadade. Detta kan bero på en saknad eller individuellt skadad tabell, eller kanske viss information som har raderats av misstag.

Korrupta filer i din WordPress-installation

Detta kan till och med bero på hackers.

Problem med databasservern

Flera saker kan vara fel på webbhostens sida, exempelvis att databasen är överbelastad från en trafiktopp eller inte svarar på grund av allt för många samtidiga anslutningar. Detta är vanligt när det gäller delad hosting eftersom de använder samma resurser för många användare på samma servrar.

En ökning av trafiken

Beroende på vilket hosting-leverantör som du använder kanske din server inte kan hantera så många samtidiga databasanslutningar. En ökning av trafiken kan leda till tillfälliga problem med databasen.

Så här åtgärdar du ”Fel vid upprättande av en databasanslutning”?

Innan du felsöker felet rekommenderar vi att du tar en Säkerhetskopia av WordPress-webbplatsen. Många av rekommendationerna nedan handlar om att manipulera information i din databas, så du bör inte göra saker värre. Du bör alltid säkerhetskopiera innan du försöker fixa saker på din WordPress-webbplats, oavsett hur tekniskt kunnig som du tror att du är.

Du kan använda ett populärt säkerhetskopierings-plugin för WordPress som VaultPress eller WP Time Capsule för att säkerhetskopiera dina filer och din databas.

Om du är en Kinsta-användare kan du dra nytta av vår inbyggda säkerhetskopieringsfunktion.Klicka på din WordPress-webbplats i MyKinsta och välj Säkerhetskopior. Klicka sedan på fliken Manuell och klicka på knappen Säkerhetskopiera nu för att skapa en säkerhetskopia manuellt.

Skapa en WordPress-säkerhetskopia i MyKinsta.
Skapa en WordPress-säkerhetskopia i MyKinsta.

Du har då även möjlighet att återställa en säkerhetskopia till produktion eller iscensättning. Du kan även säkerhetskopiera din MySQL-databas manuellt med phpMyAdmin. När du har en lyckad säkerhetskopiering är det dags att felsöka dina problem med databasanslutningen.

1. Kontrollera dina inloggningsuppgifter för databasen

Det första som du ska göra är att kontrollera att dina inloggningsuppgifter för databasen är korrekta. Detta är den överlägset vanligaste anledningen till att meddelandet ”fel vid upprättande av en databasanslutning” uppstår. Särskilt direkt efter att man har migrerat till en ny hosting-leverantör. Anslutningsinformationen för din WordPress-webbplats lagras i wp-config.php-filen, som vanligtvis finns i roten till din WordPress-webbplats.

Den innehåller fyra viktiga uppgifter som måste vara korrekta för att anslutningen ska kunna ske framgångsrikt.

Databasens namn

// MySQL settings

// The name of the database for WordPress 
define('DB_NAME', 'xxxxxx');

Användarnamn för MySQL-databasen

// MySQL database username 
define('DB_USER', 'xxxxxx');

Lösenord för MySQL-databasen

// MySQL database password 
define('DB_PASSWORD', 'xxxxxxxxx');

MySQL-hostnamn (server)

// MySQL hostname 
define('DB_HOST', 'localhost');

För att komma åt din wp-config.php-fil kan du ansluta till din webbplats via SFTP och scrolla till roten på din webbplats. Om du använder cPanel kan du klicka på ”Filhanterare”, scrolla till roten på din webbplats och högerklicka för att redigera filen.

Hitta Filhanterar-ikonen i cPanel.
Hitta Filhanterar-ikonen i cPanel.

Här är ett exempel på hur filen ser ut när den öppnas.

wp-config.php-referenser
wp-config.php-referenser

Du måste nu kontrollera dina nuvarande värden mot dem på din server för att säkerställa att de är korrekta. Följ anvisningarna nedan för cPanel-användare och Kinsta-användare.

Kontrollera databasuppgifter i cPanel

Det första som0020du ska kontrollera är databasnamnet. För att göra detta måste du logga in på phpMyAdmin i cPanel under avsnittet Databaser.

phpMyAdmin-ikonen i cPanel.
phpMyAdmin-ikonen i cPanel.

Du bör se ditt databasnamn längst ner till vänster. Du kan ignorera ”information_schema”-databasen eftersom det här är något som används av hosten. Du bör sedan jämföra det namnet med DB_NAME-värdet i din wp-config.php-fil. Om de matchar är det inte det som är problemet. Om de inte matchar måste du uppdatera din wp-config.php-fil.

Hitta databasnamnet i phpMyAdmin.
Hitta databasnamnet i phpMyAdmin.

Du kan även verifiera att detta är rätt databas genom att se till att den innehåller webbadressen till din WordPress-webbplats. För att göra detta, klicka på databasen och sedan på wp_options-tabellen (detta kan vara något annorlunda av säkerhetsskäl, exempelvis wpxx_options). Högst upp i tabellen ser du värden för webbplatsens webbadress och namn. Om dessa matchar din nuvarande webbplats kan du vara säker på att du är på rätt plats.

Kontrollera webbplatsens webbadress i phpMyAdmin
Kontrollera webbplatsens webbadress i phpMyAdmin

Om ditt databasnamn stämde och du fortfarande får meddelandet ”fel vid upprättande av en databasanslutning” bör du även kontrollera ditt användarnamn och lösenord. För att göra detta måste du skapa en ny PHP-fil i rotkatalogen på din WordPress-webbplats och ange följande kod. Du kan namnge detta vad du vill, exempelvis checkdb.php. Ändra värdena för db_user och db_password med dem i din wp-config.php-fil.

<?php

$test = mysqli_connect('localhost', 'db_user', 'db_password');
if (!$test) {
    die('MySQL Error: ' . mysqli_error());
}
echo 'Database connection is working properly!';
mysqli_close($testConnection);

Bläddra sedan i filen på din WordPress-webbplats: https://yourdomain.com/checkdb.php. Om du möts av ”MySQL-fel: Åtkomst nekad” vet du att ditt användarnamn eller lösenord är fel och måste fortsätta till nästa steg för att återställa dina referenser.

Åtkomst nekad i MySQL
Åtkomst nekad i MySQL

Nedan visas det meddelande som du vill se, ”Databasanslutningen fungerar korrekt.” Men om det vore så väl skulle du ju inte vara här. Var noga med att ta bort / radera den här filen när du är klar med testningen.

Databasanslutningen fungerar korrekt
Databasanslutningen fungerar korrekt

Härnäst måste du återställa ditt användarnamn och lösenord. I cPanel klickar du på MySQL-databaser under avsnittet Databaser.

MySQL-databaser i cPanel
MySQL-databaser i cPanel

Scrolla ner och skapa en ny MySQL-användare. Försök att välja ett unikt användarnamn och lösenord så att de inte är så lätta att gissa. Det tillhandahållna lösenordsgenererings-verktyget fungerar utmärkt. Klicka sedan på ”Skapa användare.” Du kan alternativt ändra lösenordet på den här skärmen för den aktuella databasanvändaren.

Skapa en ny MySQL-användare
Skapa en ny MySQL-användare

Scrolla sedan ner och lägg till din nya användare i din databas. Nästa skärm frågar vilka privilegier som du vill tilldela. Välj ”Alla privilegier.”

Lägg till användare i databasen i cPanel
Lägg till användare i databasen i cPanel

Ta sedan de nya referenserna och uppdatera din wp-config.php-fil. Du bör uppdatera värdena för DB_USER och DB_PASSWORD. Du kan även köra testfilen från tidigare. Detta bör sedan lösa problemet med dina autentiseringsuppgifter. Om så inte är fallet, kan du fortfarande ha fel hostnamn (DB_HOST). Vissa hostar använder andra värden.

Se en lista över några vanliga DB-hostvärden. Detta är vanligtvis localhost. Men du kan alltid kontakta din hosting-leverantör eller kontrollera deras dokumentation om du inte är säker. Vissa kanske även använder 127.0.0.1 i stället för localhost.

Om du har följt alla anvisningar ovan och fortfarande får meddelandet ”fel vid upprättande av en databasanslutning” ska du fortsätta till nästkommande felsökningssteg nedan.

Kontrollera databasuppgifter med Kinsta

Om du är en Kinsta-användare är det mycket enklare att kontrollera dina referenser mot din wp-config.php-fil och servern! Allt som du behöver göra är att klicka på Info-avsnittet på din webbplats så ser du databasnamnet, användarnamnet och lösenordet längst ner. Som standard använder Kinsta localhost för DB_HOST.

Kontrollera databasuppgifterna i MyKinsta.
Kontrollera databasuppgifterna i MyKinsta.

Ta sedan de nya referenserna och uppdatera din wp-config.php-fil. Du bör uppdatera värdena för DB_USER och DB_PASSWORD. Detta bör sedan lösa problemet med dina autentiseringsuppgifter. Om du behöver återställa dessa autentiseringsuppgifter kan du kontakta vårt supportteam. Om du har följt alla stegen ovan och fortfarande får meddelandet ”fel vid upprättande av en databasanslutning” fortsätter du till nästkommande felsökningssteg nedan.

2. Reparera korrupt WordPress-databas

I vissa fall kan det vara så att din databas har blivit skadad. Detta kan ibland ske (men inte så ofta) eftersom hundratals tabeller med tiden ständigt läggs till / tas bort av nya plugins och teman. Om du försöker att logga in på din WordPress-webbplats instrumentpanel och möter följande fel är din databas skadad: ”En eller flera databastabeller är inte tillgängliga. Databasen kan behöva repareras.” Det är viktigt att notera att du kanske bara möter det här felet på backend, medan du möter meddelandet ”fel vid upprättande av en databasanslutning” på frontend.

WordPress har ett databasreparationsläge som du kan initiera. Lägg till följande längst ner i din wp-config.php-fil.

define('WP_ALLOW_REPAIR', true);
WordPress-reparationsläge
WordPress-reparationsläge

Scrolla sedan till följande plats på din WordPress-webbplats: https://yourdomain.com/wp-admin/maint/repair.php. Du har då möjlighet att reparera databasen eller reparera och optimera databasen. Eftersom du förmodligen felsöker ett avbrott på din webbplats rekommenderar vi att du använder alternativet för att reparera databasen eftersom det går snabbare.

Reparera databasen i WordPress
Reparera databasen i WordPress

När du har kört reparationen av databasen, se till att du tar bort kodraden som du lade till i din wp-config.php-fil. Annars kommer vem som helst att kunna komma åt sidan repair.php. Om du kör cPanel kan du även köra en reparation från MySQL-databasskärmen.

Reparera databas i cPanel
Reparera databas i cPanel

Du kan även köra en reparation inifrån phpMyAdmin.  Logga bara in på phpMyAdmin, klicka på din databas och välj alla tabeller. Klicka sedan på ”Reparera tabell” i rullgardinsmenyn. Detta kör i princip endast kommandot REPAIR TABLE.

Reparera tabeller i phpMyAdmin
Reparera tabeller i phpMyAdmin

Och slutligen skulle ditt andra alternativ vara att köra reparationen med WP-CLI med följande kommando:

wp db repair

Se mer dokumentation om användning av detta i WordPress-utvecklarresurserna.

Om du vill optimera din databas har vi några bra guider om hur du optimerar WordPress-revideringar för prestanda, samt hur du konverterar dina MyISAM-tabeller till InnoDB. Om du fortfarande har problem på din webbplats fortsätter du till nästa felsökningssteg.

Föreslagen läsning: Så här åtgärdar du felet ”MySQL Server Har Försvunnit” i WordPress.

3. Fixa korrupta WordPress-filer

En annan möjlig anledning till att du möter meddelandet ”fel vid upprättande av en databasanslutning” är att dina WordPress-kärnfiler har blivit skadade. Oavsett om detta härrörde från ett problem med att överföra filer via FTP, en hacker som har fått tillgång till din webbplats eller ett problem med din host, kan du åtgärda detta ganska snabbt. Vi rekommenderar dock att du tar en säkerhetskopia av din webbplats innan du provar detta.

Du kommer att ersätta kärnversionen av WordPress på din webbplats. Du rör inte dina plugins, teman eller din media, bara själva WordPress-installationen.

Du kan dock förlora alla ändringar eller anpassad kod som du har lagt till i filer som .htaccess eller wp-config.php. Om du säkerhetskopierar din webbplats före felsökningen har du kopior av dessa filer som du kan återställa senare.

För att komma igång måste du ladda ner en ny WordPress-kopia från WordPress.org.

Ladda ner WordPress
Ladda ner WordPress

Packa upp den här filen på din dator. Sen bör du ta bort mappen wp-content och wp-config-sample.php-filen.

Ta bort mappen wp-content
Ta bort mappen wp-content

Ladda sedan upp de återstående filerna via SFTP till din webbplats och skriv över dina befintliga filer. Detta kommer att ersätta alla problematiska filer och se till att du har färska och hela filer. Det rekommenderas att du rensar webbläsarens cache efter att du har gjort detta. Kontrollera sedan din WordPress-webbplats för att se om felet fortfarande finns kvar.

4. Kontrollera om det finns problem med din databasserver

Om inget ovan har hjälpt till att lösa problemet rekommenderar vi starkt att du kontrollerar med din hosting-leverantör eftersom det kan finnas ett problem med din databasserver. Om det exempelvis finns för många samtidiga anslutningar till databasen kan det genereras ett fel. Detta beror på att många hostar begränsar sina servrar till ett visst antal tillåtna samtidiga anslutningar. Att använda ett cachelagrings-plugin kan hjälpa till att minimera databasinteraktionerna på din webbplats. Om du är en Kinsta-klient behöver du inte ha något cachelagrings-plugin, eftersom vi har en snabb cachelagring på servernivå.

Det här problemet uppstår ofta hos delade hostar, eftersom någon annan teoretiskt sett kan påverka din webbplats. Detta beror på att delade hostar använder samma resurser på servrarna. Detta är en annan anledning till att vi rekommenderar att du använder en högpresterande hanterad WordPress-hosting, så att prestandan bibehålls. Detta gör även att miljön vanligtvis är finjusterad för att hantera stora mängder trafik, särskilt till WordPress-webbplatser.

Det kunniga Kinsta-supportteamet är alltid ett klick bort längst ner till höger på instrumentpanelen och tillgängligt dygnet runt om du behöver hjälp. Och glöm inte att vi har representanter som hjälper dig på flera språk, inklusive engelska, spanska, franska, italienska och portugisiska.

Skicka ett meddelande till Supporten i MyKinsta.
Skicka ett meddelande till Supporten i MyKinsta.

5. Återställ den senaste säkerhetskopian

Och sist men inte minst kan du alltid tillgripa en säkerhetskopia om det krävs. Detta kan ibland vara ett snabbare sätt att lösa problemet på om du inte är orolig för att förlora data som har tillkommit efter att du tog din senaste säkerhetskopia. Många hostar har sin egen säkerhetskopieringsprocess. Kom ihåg att det kan krävas att du både återställer databasen och filerna.

Om du är en Kinsta-användare kan du snabbt återställa en säkerhetskopia av din webbplats i avsnittet Säkerhetskopior på din webbplats. Välj den tidpunkt som du vill återgå till och klicka på Återställ till. Du kan sedan välja om du vill återställa till Iscensättning eller din Live-webbplats.

Återställ en WordPress-säkerhetskopia i MyKinsta.
Återställ en WordPress-säkerhetskopia i MyKinsta.

Du kommer då att uppmanas att bekräfta återställningen. Ange ditt webbplatsnamn och klicka på ”OK.” Det skapar även en säkerhetskopia vid återställningstiden så att du kan ångra återställningen om det krävs.

Bekräfta WordPress-återställning
Bekräfta WordPress-återställning

Sammanfattning

Som du kan se finns det en hel del sätt att fixa ”felet med att upprätta en databasanslutning” i WordPress. Den vanligaste anledningen är ogiltiga inloggningsuppgifter i filen wp-config.php. En bra start är att kontrollera att de är korrekta. Det sista som du vill uppleva är ett driftstopp för din webbplats.

Något av stegen ovan har förhoppningsvis fått igång din webbplats igen. Kom ihåg att du alltid kan återställa din webbplats från en säkerhetskopia om det krävs.

Har du mött meddelandet ”fel vid upprättande av en databasanslutning” på din webbplats? Kunde du i så fall lösa detta? Låt oss veta nedan i kommentarerna.

Brian Jackson

Brian har stor passion för WordPress och har använt det i över ett årtionde, han har till och med utvecklat ett par premium-plugins. Brian gillar att blogga, kolla filmer och hiking. Ta kontakt med Brian via Twitter.