Bij een relatie van een klant van ons was de website een paar dagen uit de lucht.

WordPress gaf deze foutmelding: “Error establishing a database connection

Door in “wp-config.php” de regel “define(‘WP_DEBUG’, false);” te veranderen naar “define(‘WP_DEBUG’, true);” konden we een uitgebreidere foutmelding zien in plaats van alleen “Error establishing a database connection“.

Zodoende kwamen we erachter dat MySQL de verbinding weigerde omdat het gebruikte wachtwoord “verouderd en onveilig” zou zijn.

Dit verklaard waarom de website eruit lag en er geen connectie gemaakt kon worden met de database.

Inloggen via phpMyAdmin

Ook toen we rechstreeks via phpMyAdmin probeerden in te loggen bij de database kregen we een error:Mysqlnd cannot connect to MySQL 4.1+ using the old insecure authentication

mysqli_real_connect(): (HY000/2000): mysqlnd cannot connect to MySQL 4.1+ using the old insecure authentication. Please use an administration tool to reset your password with the command SET PASSWORD = PASSWORD(‘your_existing_password’). This will store a new, and more secure, hash value in mysql.user. If this user is used in other scripts executed by PHP 5.2 or earlier you might need to remove the old-passwords flag from your my.cnf file.

De oplossing

Hoewel we in eerste instantie schrokken van de foutmelding “Error establishing a database connection“, bleek de oplossing makkelijker dan gedacht.

Door een “nieuw en veiliger” wachtwoord aan te maken voor de database via de hosting-omgeving van het bedrijf, kregen we toegang tot de database.

Vervolgens hebben we het oude wachtwoord in “wp-config.php” vervangen door het nieuwe wachtwoord en was de website weer in de lucht.

Hulp nodig?

Heb jij ook bovenstaande foutmelding en heb je hulp nodig of heb je een ander probleem met een WordPress website? Neem dan gerust contact met ons op.