監(jiān)控MySQL主從狀態(tài)的shell腳本
更新時間:2020年12月25日 08:45:44 作者:easydba
這篇文章主要分享了監(jiān)控MySQL主從狀態(tài)的shell腳本,幫助大家更好的監(jiān)控mysql數(shù)據(jù)庫,保持穩(wěn)定性,感興趣的朋友可以了解下
分享一個Linux下,監(jiān)控MySQL主從狀態(tài)及配合企業(yè)微信機器人報警的Shell腳本
- SLAVE_IP:為監(jiān)控的主機IP
- USER:為msyql用戶
- PASSWORD:為mysql密碼
- WHEREIS_MYSQL:為mysql命令路徑
- WEBHOOK:為企業(yè)微信機器人Webhook地址
- wx():為企業(yè)微信機器人函數(shù)
- Check_Mysql_Slave():為監(jiān)控腳本主函數(shù)
#! /bin/bash
#
source /etc/profile
export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
SLAVE_IP=`ip add | grep inet | grep brd | awk -F / '{print $1}' | awk -F " " '{print $2}' | awk 'NR==1'`
USER=monitor
PASSWORD=xxxxxx
TIME=`date`
WHEREIS_MYSQL=/opt/mysql/bin/mysql
WEBHOOK='https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=bb09197b-5ff6-4928-9872-xxxxxx'
wx(){
cat > $0.msg << EOF
curl '$WEBHOOK' \
-H 'Content-Type: application/json' \
-d '
{
"msgtype": "text",
"text": {
"content": "$1",
}
}'
EOF
sh $0.msg && rm -rf $0.msg
}
Check_Mysql_Slave()
{
$WHEREIS_MYSQL -u$USER -p$PASSWORD -h$SLAVE_IP -e "select version();" >/dev/null 2>&1
if [ $? -ne 0 ];then
echo "Mysql is stopped $DATE" >> /data/mysql/check.log
ERROR="ERROR:Mysql-$SLAVE_IP cannot connect\n$TIME"
wx "$ERROR"
else
#echo "1" >> /data/mysql/check.log
IO_SQL_STATUS=`$WHEREIS_MYSQL -u$USER -p$PASSWORD -h$SLAVE_IP -e "show slave status \G" 2>/dev/null | awk '/Slave_.*_Running:/{print $1$2}'`
for i in $IO_SQL_STATUS;do
THREAD_STATUS_NAME=${i%:*}
THREAD_STATUS=${i#*:}
if [ "$THREAD_STATUS" != "Yes" ];then
STATUS="ERROR:Mysql-$SLAVE_IP $THREAD_STATUS_NAME status is $THREAD_STATUS!\n$TIME"
echo "$STATUS" >> /data/mysql/check.log
wx "$STATUS"
fi
done
fi
}
Check_Mysql_Slave
最終報警效果如下:

以上就是監(jiān)控MySQL主從狀態(tài)的shell腳本的詳細內容,更多關于監(jiān)控MySQL主從狀態(tài)的資料請關注腳本之家其它相關文章!
相關文章
Mysql Error Code : 1436 Thread stack overrun
I meet with the error while calling stored procedures from the MySql in my Mac system server. It similar as the description below2011-07-07
mysql中find_in_set()函數(shù)用法及自定義增強函數(shù)詳解
這篇文章主要給大家介紹了關于mysql中find_in_set()函數(shù)用法及自定義增強函數(shù)的相關資料,在MySQL 數(shù)據(jù)庫中進行復雜的查詢語句,例如對多個字段進行篩選和排序,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2024-06-06
deepin20.1系統(tǒng)安裝MySQL8.0.23(超詳細的MySQL8安裝教程)
這篇文章主要介紹了deepin20.1系統(tǒng)安裝MySQL8.0.23(最美國產Liunx系統(tǒng),最詳細的MySQL8安裝教程),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-01-01
淺析一個MYSQL語法(在查詢中使用count)的兼容性問題
本篇文章是對MYSQL語法(在查詢中使用count)的兼容性問題進行了詳細的分析介紹,需要的朋友參考下2013-07-07

