wp clinique image depannage

Dépannage WordPress

Erreur de base de données WordPress : Guide complet

Le message « Error establishing a database connection » remplace le site entier par une page presque vide. Sur une boutique, l’arrêt se compte en commandes perdues. C’est l’une des pannes les plus fréquentes qu’on traite, et l’une des plus méthodiques à réparer.

erreur base de données WordPress

Ce guide suit les sept étapes dans l’ordre où on les applique, de la vérification la plus rapide à celle qui demande d’appeler l’hébergement. Dans la plupart des cas, la cause se trouve dès les trois premières.



Pour réparer l’erreur « Error establishing a database connection », suivez ces étapes dans l’ordre :

  1. Vérifier la disponibilité du serveur de base de données
  2. Contrôler les identifiants dans le fichier wp-config.php
  3. Tester la connexion MySQL directement depuis phpMyAdmin
  4. Réparer les tables de base de données corrompues
  5. Restaurer une sauvegarde si les tables sont irréparables
  6. Augmenter la mémoire PHP si le problème persiste
  7. Contacter l’hébergeur pour les problèmes serveur

Temps moyen d’intervention : 15 à 45 minutes selon la gravité



Avant de vous lancer dans la réparation, prenons deux minutes pour comprendre ce qui se passe sous le capot. WordPress, contrairement à un site statique, stocke toutes ses données dans une base de données MySQL : vos articles, vos pages, vos utilisateurs, vos réglages, vos commentaires… absolument tout. Quand vous chargez une page, WordPress interroge cette base de données pour récupérer les informations nécessaires. C’est un ballet permanent entre votre site et MySQL.

L’erreur de connexion base de données WordPress survient quand cette communication est rompue. Imaginez un chirurgien qui arrive au bloc opératoire et découvre que tous ses instruments ont été déplacés ailleurs : il ne peut pas opérer. C’est exactement ce qui arrive à WordPress : il ne peut plus accéder aux données vitales stockées dans MySQL, donc il affiche ce message d’erreur plutôt qu’une page blanche incompréhensible.

WordPress stocke ses fichiers d’un côté et son contenu de l’autre, dans une base MySQL. Le message apparaît quand il n’arrive plus à joindre cette base. Quatre causes couvrent l’essentiel : identifiants erronés, serveur MySQL arrêté, tables corrompues, mémoire PHP insuffisante.

Les causes fréquentes de cette panne

Dans la grande majorité des cas que nous traitons chez WP Clinique, l’erreur establishing database connection provient de quatre causes principales. La première, et de loin la plus courante, concerne les identifiants de connexion incorrects dans le fichier wp-config.php. Vous avez peut-être changé d’hébergeur, modifié votre mot de passe MySQL, ou une mise à jour malencontreuse a corrompu ce fichier crucial.

La deuxième cause fréquente est un serveur de base de données saturé ou indisponible. Votre hébergeur a peut-être rencontré un problème technique, ou votre site connaît un pic de trafic qui met à genoux le serveur MySQL. J’ai vu des sites parfaitement configurés tomber simplement parce que leur hébergeur mutualisé avait placé 500 sites sur le même serveur de base de données. Quand l’un d’eux est attaqué ou connaît un afflux massif de visiteurs, tous les autres en pâtissent.

Les symptômes qui doivent vous alerter

Parfois, l’erreur de base de données ne survient pas brutalement. Elle s’annonce par des signes avant-coureurs que vous devez apprendre à reconnaître. Votre tableau de bord WordPress devient anormalement lent à charger. Certaines pages fonctionnent tandis que d’autres affichent l’erreur de manière intermittente. Vos sauvegardes automatiques échouent sans raison apparente. Ce sont autant de symptômes qui indiquent une base de données en souffrance.



Ouvrez /wp-admin. Si l’administration affiche la même erreur que le site public, c’est bien la base qui ne répond pas. Si l’administration s’ouvre normalement, cherchez ailleurs : le problème vient probablement du thème ou d’une extension.

Diagnostic différentiel : éliminer les fausses pistes

Commencez par confirmer qu’il s’agit bien de ce problème-là. Il existe plusieurs types d’erreurs WordPress qui peuvent ressembler à une erreur de connexion MySQL, mais qui nécessitent des traitements complètement différents. La première chose à vérifier est si l’erreur s’affiche sur toutes les pages ou uniquement sur certaines.

verification base de donnée

Essayez d’accéder à votre tableau de bord WordPress en ajoutant /wp-admin à l’adresse de votre site. Si la page d’administration affiche la même erreur que le front-end, nous avons confirmation : c’est bien une panne de connexion base de données. En revanche, si vous accédez au tableau de bord mais que le site frontal affiche l’erreur, le problème est probablement lié à votre thème ou à un plugin spécifique.

Identifier le moment exact de la panne

Quand l’erreur est-elle apparue pour la première fois ? Cette question simple contient souvent la clé du diagnostic. Aviez-vous installé un nouveau plugin juste avant ? Effectué une mise à jour WordPress ? Modifié vos paramètres d’hébergement ? Dans la plupart de nos interventions, la timeline nous révèle immédiatement le coupable.



Quatre valeurs à contrôler dans wp-config.php : le nom de la base, l’utilisateur, le mot de passe et l’hôte. Une seule erreur suffit à provoquer la panne. C’est la cause la plus fréquente après une migration ou un changement d’hébergement.

Accéder au fichier de configuration WordPress

Le fichier wp-config.php est le cœur névralgique de votre installation WordPress. C’est lui qui contient les identifiants de connexion MySQL : nom de la base, utilisateur, mot de passe et serveur. Pour y accéder, vous devez vous connecter à votre hébergement via FTP (FileZilla, Cyberduck) ou via le gestionnaire de fichiers de votre panneau d’hébergement (cPanel, Plesk).

Les quatre paramètres à vérifier absolument

Dans le fichier wp-config.php, quatre lignes de code déterminent si WordPress peut se connecter à votre base de données. Repérez ces lignes qui ressemblent à ceci :

define('DB_NAME', 'nom_de_votre_base');
define('DB_USER', 'utilisateur_mysql');
define('DB_PASSWORD', 'mot_de_passe');
define('DB_HOST', 'localhost');

Le paramètre DB_NAME doit correspondre exactement au nom de votre base de données tel que défini chez votre hébergeur. Une simple différence de majuscule/minuscule, et c’est l’erreur de connexion assurée. Le DB_USER est le nom d’utilisateur MySQL autorisé à accéder à cette base. Attention : ce n’est PAS votre nom d’utilisateur WordPress, mais bien l’utilisateur de la base de données créé dans votre panneau d’hébergement.

Le cas particulier du DB_HOST

Le paramètre DB_HOST mérite une attention particulière car il varie selon les hébergeurs. La valeur par défaut est localhost, ce qui signifie que la base de données se trouve sur le même serveur que les fichiers WordPress. C’est le cas chez la plupart des hébergeurs mutualisés français comme O2Switch ou OVH.



Des identifiants corrects ne garantissent pas que le serveur MySQL réponde. Un court fichier PHP de test tranche la question en quelques secondes : si la connexion échoue avec les mêmes identifiants, le problème est côté serveur, pas côté WordPress.

Créer un fichier de test de connexion

Parfois, vos identifiants wp-config.php sont parfaitement corrects, mais le serveur MySQL refuse tout simplement de répondre. Comment le vérifier ? Créez un fichier de test qui tentera de se connecter directement à votre base de données, sans passer par WordPress.

Créez un nouveau fichier nommé test-connexion.php à la racine de votre site avec ce contenu :

<?php
$connexion = mysqli_connect('localhost', 'votre_utilisateur', 'votre_mot_de_passe');
if (!$connexion) {
    die('Erreur de connexion : ' . mysqli_connect_error());
}
echo 'Connexion réussie à MySQL !';
mysqli_close($connexion);


WordPress embarque un outil de réparation, activé par la constante WP_ALLOW_REPAIR dans wp-config.php. Il répare les tables abîmées sans toucher au contenu. À défaut, phpMyAdmin permet de réparer table par table.

Activer le mode réparation de WordPress

WordPress possède un mode de réparation automatique intégré, mais il est désactivé par défaut pour des raisons de sécurité. Pour l’activer, ouvrez à nouveau votre fichier wp-config.php et ajoutez cette ligne juste avant la mention « C’est tout, ne touchez pas à ce qui suit » :

define('WP_ALLOW_REPAIR', true);

Enregistrez le fichier et envoyez-le sur votre serveur via FTP. Maintenant, accédez à l’URL suivante dans votre navigateur : https://votresite.com/wp-admin/maint/repair.php. Vous arriverez sur une page qui propose deux options : « Réparer la base de données » et « Réparer et optimiser la base de données ». Pour un traitement complet, choisissez toujours la seconde option.



Quand la réparation échoue ou que des données ont disparu, il reste la restauration d’une sauvegarde. Cette décision ne doit pas être prise à la légère, car elle implique de perdre potentiellement toutes les modifications effectuées depuis la dernière sauvegarde valide.



Une mémoire PHP insuffisante peut, elle aussi, provoquer une erreur de connexion à la base. WordPress a besoin de mémoire pour exécuter ses scripts, et si cette mémoire est insuffisante, certaines opérations échouent en silence, y compris l’établissement de la connexion MySQL.

define('WP_MEMORY_LIMIT', '256M');


Quand les sept étapes n’ont rien donné, la main passe aux renforts. Soit le problème est au niveau du serveur lui-même (MySQL planté, corruption de fichiers système, problème réseau), soit il y a un problème de configuration avancée que seul l’hébergeur peut résoudre.



Trois habitudes suffisent : une surveillance qui alerte avant vos visiteurs, des sauvegardes automatiques stockées hors du serveur, et un nettoyage régulier des tables. La corruption vient le plus souvent d’un disque plein ou d’une coupure serveur.

Mettre en place une surveillance proactive

monitoring base de donnée

La meilleure intervention est celle qu’on n’a jamais à réaliser. Mettre en place un système de surveillance de votre site WordPress permet de détecter les problèmes avant qu’ils ne deviennent critiques. Des services comme UptimeRobot, Pingdom ou notre propre système de monitoring à WP Clinique vérifient votre site toutes les 5 minutes et vous alertent instantanément en cas d’indisponibilité.

Optimiser régulièrement votre base de données

Une base de données WordPress grossit inexorablement avec le temps. Chaque révision d’article, chaque commentaire spam, chaque donnée transitoire (transient) non supprimée s’accumule et ralentit progressivement votre site. Des extensions comme WP-Optimize, WP-Sweep ou Advanced Database Cleaner permettent d’automatiser le nettoyage de ces données inutiles.

À lire aussi les bugs WordPress courants et leurs solutions



L’erreur impressionne la première fois : une page presque vide, un message en anglais, et plus rien d’autre. Mais comme vous l’avez découvert dans ce guide, cette erreur est dans la grande majorité des cas parfaitement réparable en suivant une méthodologie logique.

Récapitulons le protocole d’intervention : vérifier les identifiants dans wp-config.php, tester la connexion MySQL directement, réparer les tables corrompues, restaurer une sauvegarde si nécessaire, augmenter la mémoire PHP, et en dernier recours contacter l’hébergeur. Le plus souvent, la solution se trouve dans les trois premières étapes.

WP CliniqueOrdonnance

Ce qu’on prescrit en sortant de cet article :

  1. Vérifiez les 4 identifiants de wp-config.php (nom, utilisateur, mot de passe, hôte)Posologie : 1er réflexe en cas d’erreur
  2. Mettez votre site sous surveillance automatique (vérification toutes les 5 min)Posologie : en continu
  3. Nettoyez la base : révisions, transients, tables orphelinesPosologie : 1×/mois
  4. Restaurez depuis sauvegarde si les tables sont irréparablesPosologie : en dernier recours

⛔ Contre-indication : si vous utilisez le mode réparation (repair.php), retirez la ligne WP_ALLOW_REPAIR de wp-config.php sitôt terminé : cette page est accessible sans mot de passe.

WP Clinique

Questions fréquentes sur l’erreur de base de données

Pourquoi mon site affiche-t-il « Error establishing a database connection » ?
Combien de temps faut-il pour réparer une erreur de base de données ?
Est-ce que je risque de perdre mes données ?

À propos de l’auteur

Avatar de Steve Eraville