Lorsque vous avez des serveurs Linux avec des bases en administration, l'arrêt pour diverses raisons de MySQLD n'est pas un incident agréable. Dans ce tutoriel, vous apprenez à démarrer MySQL automatiquement s'il s'arrête pour quelque raison que ce soit, avec l'aide d'un script et d'un crontab.
contenu
Je ne sais pas quelles raisons pour certaines heures, le démon MySQLD s'arrête soudainement sans redémarrer automatiquement. Comme les journaux du serveur ne m'ont pas beaucoup aidé, j'ai recherché une solution pour vérifier l'exécution du service MySQLD, et s'il n'est pas actif, il sera lancé via un crontab.
Comment démarrer MySQL automatiquement s'il s'arrête? [Linux]
Sur les serveurs MySQL avec madiadb, le service MySQLD devrait normalement 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 Daemon MySQLD s'exécute et vous aide à démarrer MySQL s'il est arrêté.
Mon test est effectué sur le système d'exploitation Debian 12, MariaDB 10.11.4.
1. Ouvre la console et crée la hauteur du futur script qui commencera 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” copiază scriptul de mai jos:
#!/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. Enregistrer le nouveau fichier “autostart_mysql.sh“, ensuite définir les permis d'exécution.
chmod +x /usr/local/bin/autostart_mysql.sh
4. naviguer dans “/usr/local/bin/” et tester l'opération de script par ordre: “./autostart_mysql.sh“.
![Comment démarrer MySQL automatiquement s'il s'arrête? [Linux]](https://stealthsettings.com/wp-content/uploads/2023/11/Autostart-mysql-service.webp)
Pour le moment, le script à travers lequel vous commencez Mysql Exécutera automatiquement uniquement lors de l'exécution manuellement. Ajouté à Crontab, il se déroulera périodiquement, à une période établie par nous. J'ai choisi comme script “autostart_mysql.sh” être roulé toutes les 3 minutes.
Comment ajoutez-vous un script à contab?
Pour ajouter un script à Crontab pour exécuter périodiquement, à une période définie 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 Spécifie que le script sera exécuté toutes les 3 minutes.
Vous économisez Crontab et quittez l'éditeur.
Après cette étape, vérifier le service mysqld Cela se fera toutes les 3 minutes, et si le service est arrêté, il sera démarré automatiquement.
Si vous avez besoin d'aide ou d'autres clarifications, nous sommes heureux de répondre aux commentaires.