Si vous utilisez un environnement de développement local, vous risquez de rencontrer des problèmes similaires à ceux d’un serveur en production. Dans certains cas, votre site WordPress peut être incapable de se connecter à sa base de données parce que MySQL ne fonctionne pas ou s’est arrêté de manière inattendue.

Selon l’environnement local que vous utilisez, le processus de dépannage de votre base de données MySQL peut varier quelque peu. Avec XAMPP, le processus est remarquablement simple puisque vous avez accès à un panneau de contrôle au lieu de devoir vous fier uniquement à la ligne de commande.

Dans cet article, nous allons expliquer ce qu’est XAMPP et ce que signifie l’erreur « MySQL shutdown unexpectedly ». Ensuite, nous vous présenterons trois méthodes que vous pouvez utiliser pour la corriger. Allons-y !

Une introduction à XAMPP

XAMPP est un environnement de développement PHP gratuit que vous pouvez utiliser pour Windows, macOS ou Linux. Il s’agit d’un ensemble de logiciels qui vous permet d’héberger localement des sites web en imitant les fonctions d’un serveur en production :

Le site web de XAMPP.
Le site web de XAMPP.

Grâce à XAMPP, vous pouvez installer tous les logiciels dont vous avez besoin pour exécuter WordPress localement en utilisant un seul paquet, plutôt que de configurer chaque élément individuellement. Les environnements de développement diffèrent en ce qui concerne les logiciels qu’ils regroupent.

Avec XAMPP, les composants que vous obtenez incluent :

  • Apache : C’est sans doute le logiciel de serveur web le plus populaire au monde, et il permet d’héberger des sites.
  • MariaDB : Ce logiciel de base de données open-source vous permet de gérer des bases de données.
  • PHP : WordPress est construit sur PHP, ce qui signifie que vous devez installer PHP pour faire fonctionner le système de gestion de contenu (CMS).
  • Perl : Bien que WordPress n’utilise pas le langage de programmation Perl, il fait partie de la pile XAMPP par défaut.

En plus de la configuration logicielle dont vous avez besoin pour exécuter WordPress, XAMPP vous fournit un panneau de contrôle simple :

Le panneau de contrôle XAMPP.
Le panneau de contrôle XAMPP.

Cela vous permet d’accéder aux journaux pour chacun des composants de XAMPP. Il comprend un journal de synthèse qui vous montre tout ce qui se passe en arrière-plan dans votre environnement.

Cependant, l’utilisation d’une distribution de développement local ne signifie pas que votre serveur n’est pas susceptible d’erreurs. Dans certains cas, les composants logiciels peuvent mal fonctionner, par exemple avec l’erreur XAMPP « MySQL shutdown unexpectedly ».

Que signifie l’erreur XAMPP « MySQL Shutdown Unexpectedly » ?

Comme le nom de l’erreur l’indique, c’est le message que vous verrez si le logiciel MySQL de votre environnement s’arrête ou cesse de fonctionner de manière inattendue :

L'erreur XAMPP
L’erreur XAMPP « MySQL shutdown unexpectedly ».

Nous disons « inattendue », car vous pouvez à tout moment arrêter manuellement le logiciel de base de données MySQL. Cela se produit également lorsque vous redémarrez votre serveur.

Cependant, lorsque le logiciel est fermé, votre site web ne pourra pas se connecter à sa base de données. En d’autres termes, WordPress ne fonctionnera pas.

Comme vous pouvez le voir dans l’image ci-dessus, XAMPP vous donne des conseils sur le dépannage de l’erreur « MySQL shutdown unexpectedly error » dans son journal d’événements. Dans la section suivante, nous allons détailler les différentes façons dont vous pouvez utiliser pour résoudre ce problème.

Comment corriger l’erreur XAMPP « MySQL Shutdown Unexpectedly » (3 méthodes)

Généralement, la correction de l’erreur XAMPP « MySQL shutdown unexpectedly » est rapide et facile. Ci-dessous, nous vous présentons trois corrections, en commençant par la plus simple.

1. Lancer XAMPP en utilisant les privilèges de l’administrateur

Souvent, XAMPP produit des erreurs lorsque vous n’exécutez pas le logiciel en utilisant les privilèges de l’administrateur. Cela est dû au fait que ses composants peuvent ne pas être en mesure de fonctionner ou de se configurer correctement à des niveaux d’autorisation inférieurs.

Si vous n’êtes pas sûr que c’est le cas de votre installation, nous vous recommandons de fermer complètement XAMPP, puis de redémarrer l’environnement en tant qu’administrateur. Pour ce faire, dans Windows, trouvez le répertoire où vous avez installé XAMPP et localisez le fichier de contrôle xampp. Ensuite, cliquez avec le bouton droit de la souris sur ce fichier et sélectionnez Exécuter en tant qu’administrateur :

Lancement de XAMPP avec des privilèges d’administrateur.
Lancement de XAMPP avec des privilèges d’administrateur.

Si vous êtes un utilisateur de macOS, vous pouvez cliquer avec le bouton droit de la souris sur le répertoire, puis sélectionner Obtenir des informations. Dans la fenêtre qui s’ouvre, accédez à la section Partage et autorisations, cliquez sur l’icône du cadenas et saisissez votre mot de passe d’administrateur. Modifiez les réglages de permission de lecture et d’écriture pour Tout le monde.

Une fois que XAMPP est en place et que chacun de ses composants fonctionne, MySQL devrait fonctionner correctement. Cela signifie que votre base de données sera accessible.

2. Restaurer votre sauvegarde de base de données

Si le redémarrage de XAMPP avec des privilèges d’administrateur ne résout pas le problème de votre base de données, l’étape suivante consiste à restaurer sa sauvegarde. XAMPP crée automatiquement des sauvegardes pour les logiciels de votre environnement, auxquelles vous pouvez accéder dans le répertoire où vous l’avez installé.

Par défaut, vos fichiers de sauvegarde XAMPP MySQL doivent se trouver sous Disque local > XAMPP > MySQL. À l’intérieur de ce répertoire, vous verrez plusieurs répertoires, dont deux sont appelés data et backup :

Le répertoire MySQL de XAMPP.
Le répertoire MySQL de XAMPP.

Le répertoire data comprend tous les fichiers que votre base de données utilise. Le répertoire backup contient une seule copie récente de votre MySQL.

Avant de restaurer les fichiers de sauvegarde, utilisez votre panneau de contrôle XAMPP pour stopper le logiciel MySQL. Vous pouvez le faire en cliquant sur le bouton Stop à droite de l’option MySQL dans le menu principal :

Utilisation du panneau de contrôle XAMPP.
Utilisation du panneau de contrôle XAMPP.

Une fois que vous avez stoppé MySQL, retournez dans votre répertoire XAMPP. Pour restaurer la sauvegarde de MySQL, changez le nom du répertoire data en n’importe quel autre nom, par exemple data-old. Ensuite, renommez le répertoire backup en data. C’est tout !

Pour plus de sécurité, nous vous recommandons de conserver le répertoire data-old jusqu’à ce que vous soyez sûr que tout fonctionne correctement. À ce stade, vous pouvez retourner au panneau de contrôle XAMPP pour redémarrer MySQL, qui devrait maintenant fonctionner correctement.

3. Changez votre port MySQL

L’une des causes les plus fréquentes de l’erreur XAMPP « MySQL shutdown unexpectedly » est qu’un autre logiciel utilise le port attribué à MySQL. Par défaut, il s’agit généralement du port 3306. Pour en être certain, vous pouvez sélectionner le module Netstat dans le panneau de contrôle de XAMPP, juste au-dessus de l’outil Shell :

Utilisation de l'outil Netstat de XAMPP.
Utilisation de l’outil Netstat de XAMPP.

Netstat est un outil en ligne de commande qui peut vous montrer les connexions actives sur votre réseau, y compris les ports qu’elles utilisent. Une fois que vous avez initialisé Netstat, vous pourrez voir quel port utilise chaque outil de votre pile, y compris MySQL.

Vérification des connexions actives à l'aide de Netstat.
Vérification des connexions actives à l’aide de Netstat.

Si un conflit avec ce port a causé l’arrêt, la restauration d’une sauvegarde ou l’exécution de MySQL avec des privilèges d’administrateur ne fera pas de différence. La seule façon de résoudre ce problème est de changer le port utilisé par MySQL. Grâce à Netstat, vous pouvez voir quel est ce port et quels autres sont utilisés.

Pour ce faire, stoppez le service en suivant le même processus que celui que nous vous avons montré dans la dernière section. Ensuite, cliquez sur le bouton Config à côté du menu principal de MySQLon XAMPP, puis sélectionnez l’option my.ini :

Accès au fichier de configuration de MySQL.
Accès au fichier de configuration de MySQL.

Le fichier my.ini contient les réglages de configuration de MySQL. Après avoir cliqué dessus, XAMPP ouvrira le fichier en utilisant votre éditeur de texte par défaut. Une fois que vous y êtes, recherchez la ligne Port, qui spécifie le numéro de port utilisé par MySQL.

Ici, vous pouvez changer ce numéro de port pour une autre option que vous savez que d’autres programmes n’utilisent pas. Dans la plupart des cas, nous recommandons d’utiliser le port 3307, qui devrait être disponible. Enregistrez vos modifications et fermez le fichier my.ini.

Vous pouvez ensuite utiliser le panneau de contrôle XAMPP pour redémarrer MySQL. Avec un peu de chance, votre base de données fonctionne maintenant comme il se doit. Si pour une raison quelconque, XAMPP ne peut pas se connecter à votre base de données en utilisant le nouveau port que vous avez défini, il vous le fera savoir par le biais du journal du panneau de contrôle. Dans ce cas, vous pouvez essayer d’utiliser un autre port.

Résumé

Si vous utilisez XAMPP pour exécuter WordPress localement, vous pouvez rencontrer des erreurs occasionnelles dans la configuration de votre serveur. L’un des problèmes les plus courants est la fermeture inattendue de MySQL.

La bonne nouvelle est que, si cela se produit, il existe trois méthodes que vous pouvez utiliser pour résoudre le problème :

  1. Exécutez XAMPP en utilisant les privilèges d’administrateur.
  2. Restaurez la sauvegarde de votre base de données.
  3. Changez votre port MySQL.

Si vous avez apprécié ce tutoriel XAMPP, n’oubliez pas de consulter également DevKinsta. DevKinsta est notre outil de développement local gratuit qui vous permet de faire tourner rapidement des sites WordPress avec des réglages PHP personnalisables, la prise en charge du HTTPS, la gestion intégrée d’e-mail et des bases de données, et bien plus encore. DevKinsta est également totalement intégré à MyKinsta, mais il n’est pas nécessaire d’être client de Kinsta pour l’intégrer dans votre flux de travail.