Une erreur MySQL ou MariaDB peut provenir de l’application, de son environnement PHP, des paramètres de connexion ou du service de base de données. Le message précis permet de choisir la bonne vérification. Commencez par conserver les faits avant de modifier plusieurs réglages à la fois.
Noter le contexte de l’erreur
Relevez le message complet, son code éventuel, l’heure avec le fuseau horaire et l’action concernée : ouverture du site, connexion, commande, import ou tâche planifiée. Indiquez si le problème est permanent ou intermittent et s’il a commencé après une migration, une mise à jour ou un changement PHP. Masquez les mots de passe, les jetons et les données personnelles avant de partager un extrait.
Associer le message à une vérification
- Extension ou pilote absent : des messages comme
Class mysqli not foundoucould not find driverorientent vers le module PHP attendu par l’application. Vérifiez la version PHP réellement utilisée par le site et la disponibilité de MySQLi ou PDO MySQL selon ses besoins. Notre guide de choix PHP aide à préparer cette vérification. - Access denied : examinez le compte de base de données utilisé, ses identifiants et ses autorisations pour la connexion concernée. Un mot de passe incorrect est une possibilité, mais ce message peut aussi concerner l’hôte autorisé ou les droits demandés.
- Unknown database : vérifiez le nom exact de la base, son préfixe éventuel et le serveur visé. Une base vide créée avec un nom ressemblant ne remplace pas les données attendues par le site.
- Can't connect, connexion refusée ou délai dépassé : faites confirmer l’hôte, le port ou le socket attendu, puis la disponibilité du service et le chemin réseau. Un nom d’hôte non résolu appelle d’abord une vérification de cette résolution.
- Too many connections, Lost connection ou server has gone away : relevez la fréquence, l’opération et la charge au moment de l’incident. Ces messages demandent une analyse du contexte; ils ne justifient pas automatiquement une hausse des limites ou un redémarrage.
Comprendre la différence entre socket et réseau
Sous Unix, MySQLi peut utiliser un socket local lorsque l’hôte est localhost, alors que 127.0.0.1 demande une connexion TCP. Ces valeurs ne sont donc pas toujours interchangeables. Une erreur de socket ne prouve pas que la base est corrompue. La documentation PHP sur les connexions et le guide MySQL de connexion expliquent les mécanismes à vérifier.
Limiter la correction au problème identifié
Dans cPanel, consultez les bases et utilisateurs du bon compte. Vérifiez leur association et les privilèges nécessaires à l’application, sans élargir les accès par défaut. La documentation de gestion des bases décrit ces éléments. Si vous changez un mot de passe, coordonnez la mise à jour des applications qui l’utilisent.
Sur un hébergement administré, confiez les contrôles du service, des modules et des journaux serveur au soutien. Une erreur de connexion ne nécessite pas systématiquement de recompiler PHP. Évitez aussi de publier une page phpinfo() pour demander de l’aide : elle peut exposer des détails de configuration. Avant une modification applicative, conservez la configuration précédente et une sauvegarde adaptée aux données concernées.
Faire avancer le diagnostic avec Nuagerie
Ouvrez une demande depuis votre espace client avec le domaine, le contexte et un extrait d’erreur nettoyé. Notre équipe peut vous aider à distinguer un réglage de connexion, un module manquant et un incident du service. Après la correction, vérifiez le parcours qui échouait et les tâches associées, sans vous limiter à l’affichage de la page d’accueil.