La connexion entre WordPress et le serveur de base de données a été coupée pendant une opération. Le serveur a fermé la porte : délai d’inactivité dépassé, requête trop volumineuse pour sa limite (max_allowed_packet), redémarrage ou manque de mémoire. Le message apparaît surtout pendant les imports, les sauvegardes, les migrations ou les longues tâches planifiées.
Pourquoi cette erreur apparaît
- Une requête dépasse la taille maximale acceptée par le serveur (réglage max_allowed_packet), typiquement lors de l’import d’une base qui contient de grosses lignes.
- Un traitement long (import, sauvegarde, régénération de miniatures) laisse la connexion inactive plus longtemps que le délai wait_timeout du serveur.
- Le serveur MySQL ou MariaDB a redémarré, ou s’est arrêté faute de mémoire, en pleine requête.
- Une table très volumineuse (journaux, révisions, sessions, options chargées automatiquement) rend certaines requêtes trop lourdes pour l’hébergement.
Comment corriger le problème
Noter le moment où l’erreur survient
Le contexte oriente le diagnostic : pendant l’import d’une sauvegarde, c’est souvent la taille des paquets ; pendant une tâche longue, le délai d’inactivité ; à des moments aléatoires, la santé du serveur. Relancez l’opération une fois, car une coupure ponctuelle ne se reproduit pas forcément.
Importer la base en plusieurs morceaux
Pour une restauration, importez la base table par table, ou utilisez l’outil d’import de l’hébergeur plutôt que phpMyAdmin, qui supporte mal les gros fichiers. Les extensions de migration qui découpent le travail en étapes contournent aussi ce problème.
Alléger la base
Faites une sauvegarde complète, puis supprimez les révisions superflues, les transients expirés et les journaux d’extensions qui ont grossi : moins de données, ce sont des requêtes plus courtes. Une extension d’optimisation de base réalise ce ménage sans passer par le SQL.
Interroger l’hébergeur sur ses limites
Sur un hébergement mutualisé, vous ne pouvez généralement pas régler max_allowed_packet et wait_timeout vous-même. Demandez au support leurs valeurs et s’il peut les relever ; sur un serveur dédié ou un VPS, ils se modifient dans la configuration de MySQL ou MariaDB.
Contrôler les valeurs sur votre serveur
Ces requêtes affichent les valeurs en vigueur. Sur un serveur que vous administrez, une valeur de 64M pour max_allowed_packet suffit en général à un site WordPress ; la valeur se règle dans la section [mysqld] du fichier de configuration, suivie d’un redémarrage du service.
-- Onglet SQL de phpMyAdmin
SHOW VARIABLES LIKE 'max_allowed_packet';
SHOW VARIABLES LIKE 'wait_timeout';
# Fichier de configuration MySQL ou MariaDB, section [mysqld]
max_allowed_packet = 64M
Avant de nettoyer la base ou de relancer un import, gardez une sauvegarde complète de la base actuelle et vérifiez qu’elle s’ouvre.
Un autre message d'erreur ? Collez-le dans le décodeur : il le reconnaît et vous oriente vers la bonne fiche.
Ouvrir le décodeur