关于监控mysql服务的脚本

     一般来说,数据库库都非常重要,我们一般是不会让数据库进行重启的,所以需要实时监控mysql的运行状态。

 对于监控mysql的运行状态可使用shell脚本进行监控,一种很简单的方法,查看mysql的端口,看端口是否启动,从而进行判断mysql是否宕掉,另一种通过监控端口和进程进行判断。(默认mysql端口为3306)

--------------------------------如有发现错误或者是其他问题请联系QQ:1419544854-------------------------------------------------

1. 通过端口进行判断:(简单的)

#!/bin/bash
port=`netstat -anpt|grep mysqld|awk -F '[ :]+' '{print $5}'`
if [ "$port" == "3306" ];then                            ##这里判断的时候把$port与3306当做字符串进行判断
  echo "mysql server is running"
else
  /etc/init.d/mysqld start
fi


2. 通过端口和进程进行判断:(稍微完善点的)

#!/bin/bash
portNum=$(netstat -anpt|grep mysql|wc -l)
mysqlProcessNum=$(ps -ef |grep mysqld|grep -v "grep mysqld"|wc -l)
if [ $portNum -eq 1 ] && [ $mysqlProcessNum -eq 2 ];then
  echo "mysql is running"
else
  /etc/init.d/mysqld start >/dev/null
  sleep 10
  portNum=$(netstat -anpt|grep mysql|wc -l)
  mysqlProcessNum=$(ps -ef |grep mysqld|grep -v "grep mysqld")
  if [ $portNum -ne 1 ] && [ $mysqlProcessNum -ne 2 ];then
    while true
    do
      pkill mysqld >/dev/null 2>&1
      [ $? -ne 0 ] && break
      sleep 2
    done
  else
   /etc/init.d/mysqld start >/dev/null && echo "mysql successful"||echo "mysql failure"
  fi
fi


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值