วิธีเริ่ม MySQL โดยอัตโนมัติหากหยุดทำงาน

เมื่อจัดการเซิร์ฟเวอร์ฐานข้อมูล Linux การปิดบริการ mysqld โดยไม่คาดคิดอาจทำให้เกิดความไม่สะดวกอย่างมาก ในบทช่วยสอนนี้ คุณจะเห็นวิธีการเริ่ม MySQL โดยอัตโนมัติหากหยุดด้วยเหตุผลหลายประการโดยใช้สคริปต์และ crontab

ด้วยเหตุผลที่ไม่ชัดเจน mysqld daemon อาจหยุดกะทันหันและไม่รีสตาร์ทโดยอัตโนมัติในบางสถานการณ์หรือบางเวลา เนื่องจากไฟล์บันทึกของเซิร์ฟเวอร์ไม่ได้ให้ข้อมูลที่เป็นประโยชน์ในเรื่องนี้ ฉันจึงมองหาวิธีแก้ไขเพื่อตรวจสอบสถานะของบริการ mysqld ดังนั้นในสถานการณ์ที่ไม่ได้ใช้งาน ควรเริ่มการรีสตาร์ทอัตโนมัติโดยใช้ cronjob

เรามาดูบทช่วยสอนแบบทีละขั้นตอนเพื่อแก้ไขปัญหานี้ (ทดสอบแล้ว. Linux Debian 12)

วิธีเริ่ม MySQL โดยอัตโนมัติหากหยุดทำงาน

ขั้นตอนแรกคือการสร้างสคริปต์ที่จะรีสตาร์ทบริการ mysqld หากหยุดทำงาน

1. เปิดตัวแก้ไขข้อความ (เช่น nano หรือ vi) และคัดลอกสคริปต์ด้านล่างไปยังไฟล์ใหม่ ตัวอย่างเช่น คุณสามารถใช้:

nano /path/to/your/script.sh

คัดลอกสคริปต์:

#!/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

บันทึกและปิดโปรแกรมแก้ไขข้อความ

2. ให้สิทธิ์ในการรันสคริปต์เพื่อให้แน่ใจว่าสามารถรันได้:

chmod +x /path/to/your/script.sh

3. เพิ่มสคริปต์ด้านล่างลงใน crontab (สั่งการ: crontab -e อนุญาตให้คุณแก้ไข):

*/3 * * * * /path/to/your/script.sh

บรรทัดด้านบนระบุว่าสคริปต์จะทำงานทุกๆ 3 นาที เครื่องหมาย */3 หมายถึง "ทุกๆ 3 นาที" โดยพื้นฐานแล้ว ด้วยบรรทัดนี้ คุณจะเริ่ม MySQL โดยอัตโนมัติ script.sh.

4. บันทึกและปิดไฟล์ crontab.

ตอนนี้สคริปต์ของคุณ script.sh จะทำงานอัตโนมัติทุกๆ 3 นาที เพื่อตรวจสอบสถานะการให้บริการ mysqld และรีสตาร์ทหากจำเป็น

หากมีสิ่งผิดปกติเกิดขึ้นและคุณต้องการความช่วยเหลือ เรายินดีที่จะตอบความคิดเห็นของคุณ

ผู้ชื่นชอบเทคโนโลยี ฉันชอบเขียนบทช่วยสอนและคำแนะนำที่เป็นประโยชน์สำหรับระบบปฏิบัติการ ระบบฮาร์ดแวร์ ภาษาการเขียนโปรแกรม และโทรศัพท์มือถือ (iOS, Android) ฉันชอบที่จะทดลองและค้นพบเทคนิค SEO ใหม่ๆ และกลยุทธ์การเพิ่มประสิทธิภาพเว็บ

Home » กวดวิชาที่ชาญฉลาด » วิธีเริ่ม MySQL โดยอัตโนมัติหากหยุดทำงาน
ทิ้งข้อความไว้