Come avviare MySQL automaticamente se si ferma? [Linux]
Quando gestisci server Linux con database, l'interruzione del servizio mysqld per vari motivi non è un incidente molto piacevole. In questo tutorial imparerai come avviare automaticamente MySQL se si ferma per qualsiasi motivo utilizzando uno script e crontab.
contenuto
Per qualche motivo sconosciuto in certi momenti il demone mysqld si ferma improvvisamente senza riavviarsi automaticamente. Dato che i log del server non mi sono stati di grande aiuto, ho cercato una soluzione per verificare il funzionamento del servizio mysqld e, se non è attivo, per avviarlo tramite crontab.
Come avviare MySQL automaticamente se si ferma? [Linux]
Sui server MySQL con MadiaDB, il servizio mysqld dovrebbe normalmente riavviarsi automaticamente quando si ferma per vari motivi. Se ciò non accade, lo script seguente controllerà periodicamente se il demone mysqld è in esecuzione e aiuterà ad avviare MySQL automaticamente se viene arrestato.
Il mio test è stato eseguito sul sistema operativo Debian 12, MariaDB 10.11.4.
1. Apri la console e crea il file per lo script futuro che avvierà il servizio mysqld se viene arrestato.
Preferisco usare l'editor “nano“.
sudo nano /usr/local/bin/autostart_mysql.sh
2. Nel nuovo file “autostart_mysql.sh” copia lo script qui sotto:
#!/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. Salvare il nuovo file “autostart_mysql.sh“, quindi imposta i permessi di esecuzione.
chmod +x /usr/local/bin/autostart_mysql.sh
4. Passare a “/usr/local/bin/” e testare lo script eseguendo il comando: “./autostart_mysql.sh“.
![Come avviare MySQL automaticamente se si ferma? [Linux]](https://stealthsettings.com/wp-content/uploads/2023/11/Autostart-mysql-service.webp)
In questo momento, lo script da cui stai iniziando Mysql verrà eseguito automaticamente solo se eseguito manualmente. Aggiunto al crontab, verrà eseguito periodicamente, ad un intervallo di tempo da noi impostato. Ho scelto la sceneggiatura “autostart_mysql.sh” da eseguire ogni 3 minuti.
Come si aggiunge uno script al contabile?
Per aggiungere uno script al crontab da eseguire periodicamente, ad un intervallo di tempo da te impostato, esegui il comando: crontab -e, quindi aggiungi la riga di comando alla fine del file.
*/3 * * * * /usr/local/bin/autostart_mysql.sh
*/3 specifica che lo script verrà eseguito ogni 3 minuti.
Salva il crontab ed esci dall'editor.
Dopo questo passaggio, controlla il servizio mysqld verrà eseguita ogni 3 minuti e, se il servizio viene interrotto, verrà avviato automaticamente.
Se hai bisogno di aiuto o altri chiarimenti, siamo felici di rispondere ai tuoi commenti.
Come avviare MySQL automaticamente se si ferma? [Linux]
Cosa c'è di nuovo
Di Stealth
Appassionato di tecnologia, scrivo volentieri su StealthSettings.com a partire dal 2006. Ho una vasta esperienza nei sistemi operativi: macOS, Windows e Linux, ma anche nei linguaggi di programmazione e nelle piattaforme di blogging (WordPress) e per negozi online (WooCommerce, Magento, PrestaShop).
Visualizza tutti i post di StealthPotrebbe interessarti anche...