- Create script
db_monitor.sh
UP=$(pgrep mysql | wc -l);
if ["$UP" -eq 0];
then
curl -X POST -H 'Content-type: application/json' --data '{"text":"MySQL Database is down [SITE_NAME]"}' https://hooks.slack.com/services/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;
systemctl restart mysql;
curl -X POST -H 'Content-type: application/json' --data '{"text":"MySQL Database has been restarted [SITE_NAME]"}' https://hooks.slack.com/services/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;
else
echo "MySQL Database is running [SITE_NAME]";
fi
-
Add
db_monitor.shto server
(e.g./etc/scripts/db_monitor.sh) -
Open
crontab -e -
Add in script
*/5 * * * * /etc/scripts/db_monitor.sh -
Save and check cron jobs
crontab -l