Comment démarrer automatiquement MySQL s'il s'arrête? [Linux]

Lorsque vous gérez des serveurs Linux avec des bases de données, l'arrêt inattendu du service mysqld pour diverses raisons n'est pas une situation agréable. Dans ce tutoriel, vous apprendrez comment démarrer automatiquement MySQL si celui-ci s'arrête pour quelque raison que ce soit, en utilisant un script et le crontab.

Pour des raisons inconnues, le démon mysqld s'arrête parfois brusquement sans redémarrer automatiquement à certaines heures. Comme les journaux du serveur ne m'ont pas beaucoup aidé, j'ai cherché une solution pour vérifier si le service mysqld est en cours d'exécution, et dans le cas où il ne l'est pas, le démarrer à l'aide d'un crontab.

Comment démarrer automatiquement MySQL s'il s'arrête? [Linux]

Sur les serveurs MySQL avec MariaDB, normalement le service mysqld devrait redémarrer automatiquement lorsqu'il s'arrête pour diverses raisons. Si cela ne se produit pas, le script ci-dessous vérifiera périodiquement si le démon mysqld est en cours d'exécution et vous aidera à démarrer automatiquement MySQL s'il est arrêté.

Mon test est fait sur OS Debian 12, MariaDB 10.11.4.

1. Ouvrez la console et créez le fichier du futur script qui démarrera le service mysqld s'il est arrêté.

Je préfère utiliser l'éditeur "nano" .

sudo nano /usr/local/bin/autostart_mysql.sh

2. Dans le nouveau fichier «autostart_mysql.sh» copiez le script ci-dessous :

#!/bin/bash

if systemctl is-active mysqld > /dev/null; then
  echo "The mysqld service is running."
else
  echo "The mysqld service is not running. Restarting..."
  systemctl start mysqld
fi

3. Enregistrez le nouveau fichier "autostart_mysql.sh", puis définissez les autorisations d'exécution.

chmod +x /usr/local/bin/autostart_mysql.sh

4. Accédez à «/usr/local/bin/» et testez le script par commande : «./autostart_mysql.sh" .

Comment démarrer automatiquement MySQL s'il s'arrête? [Linux]
Service MySQL à démarrage automatique

À l'heure actuelle, le script à partir duquel vous démarrez MySQL automatiquement ne s'exécutera que lorsqu'il sera exécuté manuellement. Ajouté à la crontab, il s'exécutera périodiquement, à un intervalle de temps fixé par nos soins. J'ai choisi que le script "autostart_mysql.sh» à exécuter toutes les 3 minutes.

Comment ajouter un script au crontab?

Pour ajouter un script à la crontab afin qu'il s'exécute périodiquement, à un intervalle de temps défini par vous, exécutez la commande : crontab -e, puis ajoutez la ligne de commande à la fin du fichier.

*/3 * * * * /usr/local/bin/autostart_mysql.sh

*/3 précise que le script sera exécuté toutes les 3 minutes.

Enregistrez la crontab et quittez l'éditeur.

Après cette étape, vérifiez le service mysqld cela se fera toutes les 3 minutes, et si le service est arrêté, il démarrera automatiquement.

Si vous avez besoin d'aide ou d'autres précisions, nous serons heureux de répondre à vos commentaires.

Passionné par la technologie, j'écris avec plaisir sur StealthSettings.com depuis 2006. J'ai une expérience approfondie dans les systèmes d'exploitation : macOS, Windows et Linux, ainsi que dans les langages de programmation et les plates-formes de blogging (WordPress) et pour les boutiques en ligne (WooCommerce, Magento, PrestaShop).

Comment » Linux » MySQL » Comment démarrer automatiquement MySQL s'il s'arrête? [Linux]
Laisser un commentaire