1、背景:最近公司的MySQL數據庫,晚上經常無故宕機,然后起不來了。(具體原因分析中...)
2、目的:臨時解決MySQL宕機后,利用shell腳本+定時器cron,檢查MySQL是否宕機,宕機就重啟
3、shell腳本:【mysqlRestartXzz.sh腳本文件】 【mysqlRestartXzz.log腳本日志文件】
[root@iZ23****bZ cron]# cat /www/shell_files/mysqlRestartXzz.sh
#!/bin/bash
pgrep -x mysqld &> /dev/null
if [ $? -ne 0 ]
then
echo “At time: `date +%Y%m%d-%H:%M:%S` MySQL is stop .”>> /www/shell_files/mysqlRestartXzz.log
/etc/init.d/mysqld start
else
echo “At time: `date +%Y%m%d-%H:%M:%S` MySQL server is running .”>> /www/shell_files/mysqlRestartXzz.log
fi
4、測試shell腳本是否可用:手動停止MySQL,執行腳本命令,測試如下:【測試成功,將腳本寫入定時器 略】
5、最終是暫時解決了這個問題,不過MySQL宕機原因還是要找到並解決的。