数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

shell实战之:mysql index文件检查机制


发布日期:2024年05月31日
 
shell实战之:mysql index文件检查机制

本文将重点讲述 shell实战中的 mysql index 文件检查机制问题请先看代码:

#!/bin/sh

def_check_index()

{

#code by scpman

#

#mail:

#需求

#

# 通过show master logs; 列出binlog文件序列如果顺序不对或记录重复发告警 发邮件告警

# 查看mysql目录下的index文件如果顺序不对或记录重复发告警

#

#实现

#发送告警函数

def_send_mail()

{

msgip= #syslog服务器

ser_IP=`cat /etc/nf | grep E ifconfig_[em|bce] | awk {print IP:$}| sed n p ` #本机的ip

#echo $ 函数接收的第一个值

if [ n $ ] && [ `echo $|grep c chongfu` gt ] #判断$是否在并且统计下chongfu这个字符是否大于

then

echo /usr/bin/logger p  h $msgip the services: $IP mysql index file $ #大于说明有错误的就得告警

exit

elif [ n $ ] && [ `echo $|grep c luanle` gt ] #判断$是否在并且统计下luanle这个字符是否大于

then

echo /usr/bin/logger p  h $msgip the services: $IP mysql index file $ #大于说明有错误的就得告警

exit

else

echo ok

fi

}

#判断index是否有重复的情况

def_index_is_one()

{

if [ n $ ]

then

static_index=$

def_send_mail `awk {a[$]++}END{for (j in a) print ja[j]} $static_index | awk v flag=$static_index {if($>) print chongfu>$}`

else

echo def_index_is_one $ is null!exit

exit

fi

}

#检查mysql目录下的index文件内容顺序是否正常

def_static_index_shunxu()

{

bzfile=/usr/dlm_db/mysql/zqtxbinindex

current_line=`cat ${bzfile}|head n |sed e s#/zqtxbin##g`

for i in `cat ${bzfile}`

do

if [ `echo $i|sed e s#/zqtxbin##g` lt $current_line ]

then

def_send_mail luanle:${bzfile}_${current_line}

exit

fi

current_line=`echo $i|sed e s#/zqtxbin##g`

done

}

#检查mysql中show master logs的index文件内容顺序是否正常

def_masterlog_index_shunxu()

{

mysql uroot p s s e show master logs; | awk {print $} | sed e s/zqtxbin//g>/usr/dlm_db/mysql/flag_index

bzfile=/usr/dlm_db/mysql/flag_index

current_line=`cat ${bzfile}|head n `

for i in `cat ${bzfile}`

do

if [ $i lt $current_line ]

then

def_send_mail luanle:master_logs_${i}

exit

fi

current_line=$i

done

}

def_index_is_one /usr/dlm_db/mysql/zqtxbinindex

def_static_index_shunxu

def_masterlog_index_shunxu

def_index_is_one /usr/dlm_db/mysql/flag_index

}

def_check_index

               

上一篇:让MYSQL彻底支持中文

下一篇:VSFTP+MySQL虚拟用户配置