Copyright© Mat Bao Company. All Reserved.
Sử dụng nội dung ở trang này và dịch vụ tại Mắt Bão có nghĩa là bạn đồng ý với Thỏa thuận sử dụng và Chính sách bảo mật của chúng tôi.
Công ty cổ phần Mắt Bão - Giấy phép kinh doanh số: 0302712571 cấp ngày 04/09/2002 bởi Sở Kế Hoạch và Đầu Tư Tp. Hồ Chí Minh.
Giấy phép cung cấp dịch vụ Viễn thông số 247/GP-CVT cấp ngày 08 tháng 05 năm 2018.
Tự khởi động lại MySQL khi quá tải trên máy chủ Linux

Đôi lúc bạn sẽ gặp tình huống dịch vụ MySQL thường xuyên bị treo, mà nguyên nhân là do tài nguyên máy chủ của bạn không đủ đáp ứng, nhưng việc nâng cấp chưa thực sự là cần thiết. Thì đây là giải pháp cho bạn:
Bước 1: Tạo file script
Chạy lần lượt các lệnh sau:
cd /root
mkdir auto
cd auto
nano -w auto-mysql.sh
(Nếu máy chủ bạn chưa có công cụ Nano bạn vui lòng chạy lệnh cài đặt #yum install nano -y)
Bước 2: Dán đoạn code sau vào file auto-mysql.sh
Nếu bạn đang sử dụng MySQL:
if [ ! "$(systemctl status mysql.service | awk 'NR==3 {print $2}')" == "active" ]; then
/bin/systemctl start mysql.service
exit
fi
Nếu bạn đang sử dụng MariaDB:
if [ ! "$(/bin/systemctl status mariadb.service | awk 'NR==3 {print $2}')" == "active" ]; then
systemctl start mariadb.service
exit
fi
Bước 3: Chạy lệnh phân quyền cho file auto-mysql.sh
#chmod +x /root/auto/auto-mysql.sh
Bước 4: Đặt thời gian hệ thống tự check trạng thái MySQL và tự động start nếu MySQL không hoạt động
Ví dụ: Bạn muốn 5 phút hệ thống kiểm tra 1 lần
#(crontab -u root -l ; echo "*/5 * * * * /root/auto/auto-mysql.sh") | crontab -u root -
Lưu ý:
Với lệnh Cronjob bạn không nên đặt thời gian quá ngắn (dưới 5 phút) điều này sẽ dẫn đến quá tải tài nguyên và lỗi hệ thống.
Chúc bạn thành công !