如果停止,如何自动启动MySQL? [Linux]

Atunci când ai în administrare servere Linux cu baze da date, oprirea din diverse motive a serviciului mysqld nu este un incident tocmai plăcut. În acest tutorial învățați cum să porniți MySQL automat dacă acesta se oprește din oricare motiv, cu ajutorul unui script și crontab.

Din nu știu ce motive la anumite ore, daemonul mysqld se oprește subit fără să repornească automat. Cum log-urile de server nu m-au ajutat foarte mult, am căutat o soluție prin care să verific rularea serviciului mysqld, iar în cazul în care acesta nu este activ, să fie pornit prin intermediul unui crontab.

如果停止,如何自动启动MySQL? [Linux]

Pe serverele MySQL cu MadiaDB, în mod normal serviciul mysqld ar trebui să repornească automat atunci când se oprește din diverse motive. Dacă acest lucru nu se întâmplă, scriptul de mai jos va verifica periodic dacă daemon mysqld rulează și vă ajută să porniți MySQL automat dacă acesta este oprit.

Testul meu este făcut pe sistemul de operare Debian 12, MariaDB 10.11.4

1. Deschide consola și creează fișirul pentru viitorul script care va porni serviciul mysqld dacă acesta este oprit.

Eu prefer să folosesc editornano“。

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

2. În noul fișierautostart_mysql.shcopiază 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. Salvați noul fișierautostart_mysql.sh, apoi setați permisiuni de executare.

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

4. Navigați în/usr/local/bin/și testați funcționarea scriptului prin comanda:./autostart_mysql.sh“。

如果停止,如何自动启动MySQL? [Linux]
Autostart mysql service

În momentul de față, scriptul prin care porniți mysql automat va rula numai atunci când este executat manual. Adăugat în crontab, acesta va rula periodic, la un interval de timp stabilit de noi. Eu am ales ca scriptulautostart_mysql.shsă fie rulat la fiecare 3 minute.

Cum adaugi un script în contab?

Ca să adaugi un script în crontab pentru a rula periodic, la un interval de timp stabilit de tine, executi comanda: crontab -e, apoi adaugi linia de comandă la finalul fișierului.

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

*/3 specifică faptul că scriptul va fi executat la fiecare 3 minute.

Salvezi crontab și părăsești editorul.

După acest pas, verificarea serviciului mysqld se va face la fiecare 3 minute, iar în cazul în care serviciul este oprit, acesta va fi pornit automat.

Dacă aveți nevoie de ajutor sau alte lămuriri, suntem bucuroși să vă răspundem la comentarii.

从2006年开始,我对技术充满热情,在StealthSetts.com上写作。我在操作系统方面拥有丰富的经验:MacOS,Windows和Linux,以及编程语言和博客平台(WordPress)和在线商店(WooCommerce,Magento,Magento,Presashop)。

Home 您的教程,有用的提示和新闻。 如果停止,如何自动启动MySQL? [Linux]
发表评论