亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.430618.com 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

我們建站初期都會選擇一臺小內存的 VPS 服務器,這樣降低建站初期的成本,再說初期訪問量很小沒有必要使用高配服務器,但是使用過程中不知道是不是內存不夠的原因,MySQL 數據庫服務總是會自動停止,就是說數據庫都宕機了。那么有沒有什么辦法在 Linux 上定時檢測 MySQL 服務是否宕機,并自動重啟服務 Linux 上定時檢測 MySQL 服務是否宕機,并自動重啟服務呢?本文分享個基于 Shell 腳本和 crontab 命令的定時檢測 MySQL 服務是否宕機,并自動重啟服務的方案,如果你也遇到了這種問題,可是嘗試用這種解決辦法。

一、檢測 MySQL 服務腳本

MySQL 自動重啟的 Shell 腳本非常簡單,整個邏輯就是檢測是否有 MySQL 的進程,如果沒有就重啟并記錄到日志文件中:

pgrep mysqld &> /dev/null
if [ $? -gt 0 ]
then
lnmp restart
echo "MySQL stopped at time: `date` " >> /root/log/mysql_listen.log
fi

二、定時任務

定時檢測的功能就是通過 crontab 實現的,具體的介紹可以參考:《Linux 利用 crontab 實現定時任務格式與用法簡介

例如我這里設置的是每 5 分鐘檢查一次 MySQL 服務:

*/5 * * * * /root/mysql.sh > /dev/null 2>&1 &

三、更多腳本

除了檢測 MySQL 服務外,相應的還可以檢測 PHP 服務、Nginx 服務等,在腳本上略微改動下就好了:

pgrep mysqld &> /dev/null
if [ $? -gt 0 ]
then
lnmp restart
echo "MySQL stopped at time: `date` " >> /root/log/mysql_listen.log
fi
 
pgrep nginx &> /dev/null
if [ $? -gt 0 ]
then
lnmp restart
echo "Nginx stopped at time: `date` " >> /root/log/mysql_listen.log
fi
 
pgrep php-fpm &> /dev/null
if [ $? -gt 0 ]
then
lnmp restart
echo "Php stopped at time: `date` " >> /root/log/mysql_listen.log
fi

這樣再也不要擔心數據庫莫名其妙宕機了,使用上述代碼 Linux 會定時檢測 MySQL 數據庫服務是否宕機,如果出現數據庫宕機則自動重啟數據庫服務。



分享到:
標簽:Linux 定時檢測 MySQL數據庫 宕機并自動重啟
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定