Kapitel 18 · 18.6
'Error establishing a database connection'
Beskeden Error establishing a database connection (på dansk Fejl ved oprettelse af databaseforbindelse) betyder, at din hjemmeside ikke kan nå databasen eller ikke må logge ind på den. Dine filer er der stadig, og din database som regel også. I ni ud af ti tilfælde er der noget galt med de oplysninger, din hjemmeside bruger til at logge ind med.
Årsager, fra hyppige til sjældne
1. Oplysningerne i konfigurationsfilen passer ikke
Dette sker især efter en flytning, en ny installation eller en ændring af et kodeord. Kontroller det sådan her:
- Åbn Databaser i DirectAdmin. Her ser du det fulde navn på din database og de brugere, der er tilknyttet den (se En database oprette og Databasebrugere, rettigheder og adgangskoder).
- Åbn konfigurationsfilen for din hjemmeside i Filhåndtering. For WordPress er det wp-config.php i public_html.
- Sammenlign de fire værdier:
- DB_NAME: det fulde databasenavn, med dit DA-brugernavn og en bindestreg foran, for eksempel wtsilefl_shop.
- DB_USER: det fulde navn på databasebrugeren, også med det præfiks.
- DB_PASSWORD: kodeordet til den databasebruger. Det er ikke dit DA-kodeord.
- DB_HOST: localhost.
Er du ikke sikker på kodeordet? Giv databasebrugeren et nyt kodeord i DirectAdmin, og indsæt præcis det kodeord i wp-config.php. Vær opmærksom på anførselstegn og mellemrum.
I andre systemer hedder filen noget andet, for eksempel configuration.php i Joomla, app/config/parameters.php i PrestaShop eller .env i Laravel.
2. Brugeren er ikke (længere) tilknyttet databasen
En databasebruger skal have rettigheder til databasen. Se under Databaser, om brugeren står ved den rigtige database. Hvis ikke, skal du tilknytte brugeren igen (se Databasebrugere, rettigheder og adgangskoder).
3. Databasen er tom eller ikke importeret
Har du flyttet din hjemmeside, så tjek i phpMyAdmin, om tabellerne rent faktisk er der (se phpMyAdmin åbne og bruge). Er der ingen tabeller, skal du importere databasen igen (se En database importeres, også store filer).
4. Beskadigede tabeller
Får du kun beskeden en gang imellem, eller melder WordPress, at en eller flere tabeller ikke er tilgængelige? Kontroller og reparer databasen (se Kontrollere, reparere og optimere en database).
5. For mange forbindelser
Ser du Too many connections eller max_user_connections i fejlloggen? Så opretter din hjemmeside forbindelse til databasen for mange gange samtidig, ofte på grund af et travlt eller dårligt fungerende plugin, eller på grund af bots. Læs Min hjemmeside er langsom.
6. Lagerpladsen er fuld
Fuld diskplads kan også få databasen til at hakke. Se under Diskplads på dashboardet (se Opbevaring fuld: hvor er pladsen?).
7. En driftsforstyrrelse
Meget sjældent skyldes det selve databaseserveren. Tjek da Driftsforstyrrelser & vedligeholdelse for at se, om der er noget galt.
Test om oplysningerne er korrekte
Kan du se tabellerne i phpMyAdmin fra DirectAdmin, så findes databasen, og den er der. Får du stadig beskeden bagefter, ligger problemet næsten helt sikkert i konfigurationsfilen for din hjemmeside.
Tip: Virkede det i går, og ved du ikke, hvad der er ændret? Med WebOké Backups i Mit WebOké kan du sætte databasen fra et tidligere tidspunkt ind som en kopi ved siden af den nuværende, under et nyt navn. Sådan sammenligner du uden risiko (se Kan det også lade sig gøre i Mit WebOké? WebOké Backups).
