Kuinka käynnistää MySQL automaattisesti, jos se pysähtyy? [Linux]

Kun hallitset Linux-palvelimia tietokantoineen, mysqld-palvelun odottamaton pysähtyminen eri syistä ei ole miellyttävä tilanne. Tässä oppaassa opit, kuinka voit käynnistää MySQLin automaattisesti, jos se pysähtyy mistä tahansa syystä, käyttäen skriptiä ja crontabia.

Tuntemattomista syistä mysqld-daemoni saattaa joskus pysähtyä äkillisesti ilman automaattista uudelleenkäynnistymistä tiettyinä aikoina. Koska palvelimen lokit eivät ole auttaneet minua paljon, etsin ratkaisua tarkistaakseni, onko mysqld-palvelu käynnissä, ja jos se ei ole aktiivinen, käynnistämään sen crontabin avulla.

Kuinka käynnistää MySQL automaattisesti, jos se pysähtyy? [Linux]

MySQL-palvelimilla MariaDB:llä mysqld-palvelun tulisi normaalisti käynnistyä automaattisesti, kun se pysähtyy eri syistä. Jos näin ei tapahdu, alla oleva skripti tarkistaa säännöllisesti, onko mysqld-daemoni käynnissä, ja auttaa sinua käynnistämään MySQLin automaattisesti, jos se on pysähtynyt.

Testini on tehty käyttöjärjestelmällä Debian 12, MariaDB 10.11.4.

1. Avaa konsoli ja luo tiedosto tulevalle komentosarjalle, joka käynnistää mysqld-palvelun, jos se pysäytetään.

Käytän mieluummin editoria "nano".

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

2. Uudessa tiedostossa "autostart_mysql.sh” kopioi alla oleva käsikirjoitus:

#!/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. Tallenna uusi tiedosto "autostart_mysql.sh", määritä sitten suoritusoikeudet.

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

4. Siirry kohtaan "/usr/local/bin/" ja testaa komentosarja komennolla: "./autostart_mysql.sh".

Kuinka käynnistää MySQL automaattisesti, jos se pysähtyy? [Linux]
Mysql-palvelun automaattinen käynnistys

Juuri nyt käsikirjoitus, josta aloitat MySQL toimii automaattisesti vain, kun se suoritetaan manuaalisesti. Lisättynä crontabiin, se toimii määräajoin määrittämämme aikavälein. valitsin sen käsikirjoituksen"autostart_mysql.sh” ajetaan 3 minuutin välein.

Kuinka lisätä skripti crontabiin?

Jos haluat lisätä komentosarjan crontabiin, joka suoritetaan säännöllisesti määrittämäsi aikavälillä, suorita komento: crontab -e, lisää sitten komentorivi tiedoston loppuun.

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

*/3 määrittää, että komentosarja suoritetaan 3 minuutin välein.

Tallenna crontab ja poistu editorista.

Tarkista palvelu tämän vaiheen jälkeen mysqld se tehdään 3 minuutin välein, ja jos palvelu pysäytetään, se käynnistyy automaattisesti.

Jos tarvitset apua tai muita selvennyksiä, vastaamme mielellämme kommentteihisi.

Teknologiasta kiinnostunut, kirjoitan mielelläni StealthSettings.com-sivustolla vuodesta 2006. Minulla on laaja kokemus käyttöjärjestelmistä: macOS, Windows ja Linux, sekä ohjelmointikielistä ja blogialustoista (WordPress) ja verkkokaupoista (WooCommerce, Magento, PrestaShop).

Miten » Linux » MySQL » Kuinka käynnistää MySQL automaattisesti, jos se pysähtyy? [Linux]
Jätä kommentti