Luku 18 · 18.6
'Error establishing a database connection'
Tätä artikkelia ei ole vielä käännetty. Luet hollanninkielistä versiota.
De melding Error establishing a database connection (of in het Nederlands Fout bij het maken van een databaseverbinding) betekent dat je website de database niet kan bereiken of er niet mag inloggen. Je bestanden staan er nog, en je database meestal ook. In negen van de tien gevallen klopt er iets niet in de gegevens die je website gebruikt om in te loggen.
Oorzaken, van vaak naar zelden
1. De gegevens in het configuratiebestand kloppen niet
Dit gebeurt vooral na een verhuizing, een nieuwe installatie of het wijzigen van een wachtwoord. Controleer het zo:
- Open in DirectAdmin Databasen (zo heet het in het Nederlandse menu; bedoeld is databases). Daar zie je de volledige naam van je database en de gebruikers die eraan gekoppeld zijn (zie Een database aanmaken en Database-gebruikers, rechten en wachtwoorden).
- Open in Bestandsbeheer het configuratiebestand van je website. Bij WordPress is dat wp-config.php in public_html.
- Vergelijk de vier waarden:
- DB_NAME: de volledige databasenaam, mét je DA-gebruikersnaam en een liggend streepje ervoor, zoals wtsilefl_shop.
- DB_USER: de volledige naam van de databasegebruiker, ook met dat voorvoegsel.
- DB_PASSWORD: het wachtwoord van die databasegebruiker. Dat is niet je DA-wachtwoord.
- DB_HOST: localhost.
Weet je het wachtwoord niet zeker? Geef de databasegebruiker in DirectAdmin een nieuw wachtwoord en zet precies dat wachtwoord in wp-config.php. Let op aanhalingstekens en spaties.
Bij andere systemen heet het bestand anders, bijvoorbeeld configuration.php bij Joomla, app/config/parameters.php bij PrestaShop of .env bij Laravel.
2. De gebruiker is niet (meer) aan de database gekoppeld
Een databasegebruiker moet rechten hebben op de database. Kijk bij Databasen of de gebruiker bij de juiste database staat. Zo niet, koppel hem opnieuw (zie Database-gebruikers, rechten en wachtwoorden).
3. De database is leeg of niet geïmporteerd
Heb je je website verhuisd, kijk dan in phpMyAdmin of de tabellen er echt in staan (zie phpMyAdmin openen en gebruiken). Zijn er geen tabellen, importeer dan de database opnieuw (zie Een database importeren, ook grote bestanden).
4. Beschadigde tabellen
Krijg je de melding alleen soms, of meldt WordPress dat een of meer tabellen niet beschikbaar zijn? Controleer en repareer de database (zie Een database controleren, repareren en optimaliseren).
5. Te veel verbindingen
Zie je in het foutlog Too many connections of max_user_connections? Dan maakt je site te veel tegelijk verbinding met de database, vaak door een drukke of slecht werkende plugin, of door bots. Lees Mijn website is traag.
6. De opslag is vol
Een volle schijfruimte kan de database ook laten haperen. Kijk op het dashboard bij Schijfruimte (zie Opslag vol: waar zit de ruimte?).
7. Een storing
Heel soms ligt het aan de databaseserver zelf. Kijk dan op Storingen & onderhoud of er iets aan de hand is.
Testen of de gegevens kloppen
Kun je de tabellen zien in phpMyAdmin vanuit DirectAdmin, dan bestaat de database en staat hij er. Krijg je de melding daarna nog steeds, dan zit het vrijwel zeker in het configuratiebestand van je website.
Tip: Werkte het gisteren nog en weet je niet wat er is veranderd? Met WebOké Backups in Mijn WebOké kun je de database van een eerder moment als kopie naast de huidige zetten, onder een nieuwe naam. Zo vergelijk je zonder risico (zie Kan dit ook in Mijn WebOké? WebOké Backups).
