手机
当前位置:查字典教程网 >脚本专栏 >linuxshell >使用shell检查并修复mysql数据库表的脚本
使用shell检查并修复mysql数据库表的脚本
摘要:复制代码代码如下:#!/bin/sh#codebyscpman#功能:检查并修复mysql数据库表#将此脚本加到定时中,脚本执行时,等会读库...

复制代码 代码如下:

#!/bin/sh

#code by scpman

#功能:检查并修复mysql数据库表

#将此脚本加到定时中,脚本执行时,等会读库,列出要修复的所有表,然后计时,开始修复

#修复过程中将损坏的表记录下来,修复完成后,将损坏的表,发邮件通知。

fix_logs='/tmp/fix.log'

user=''

pass=''

check_fix()

{

dblist=`/usr/bin/find /usr/dlm_db/mysql/ -type d | grep -vE "logs|_[1-9]|*bak|test"| sed -e "s#/usr/dlm_db/mysql/##g"`

echo start `date`>$fix_logs

for dbname in $dblist

do

echo $dbname

for tb_name in `/usr/bin/find /usr/dlm_db/mysql/$dbname -type f | awk -F'/' '{print $NF}' | awk -F'.' '{print $1}' | sort -

u`

do

mysql -u$user -p$pass $dbname<<fff>>$fix_logs

check table $tb_name;

repair table $tb_name;

FFF

done

done

echo `date` done>>$fix_logs

}

send_logs()

{

msgip=10.0.7.44

IP=`cat /etc/rc.conf | grep -E "ifconfig_[em1|bce1]" | awk '{print "IP:"$2}'| sed -n 1p `

fix_info=`grep -rE "Error|start|done" $fix_logs`

/usr/bin/logger -p local1.info -h $msgip "the services: $IP mysql_table_fix_info:$fix_info"

}

check_fix

send_logs

【使用shell检查并修复mysql数据库表的脚本】相关文章:

shell对比文件内容脚本分享

使用shell脚本分析网站日志统计PV、404、500等数据

shell命令行参数用法简介

VPS自动备份数据库到FTP的脚本代码

用shell脚本在mysql表中批量插入数据的方法

shell备份文件、重命名文件、删除指定文件的3个脚本分享

ssh expect自动登录的脚本代码

mysql源码安装脚本分享

shell脚本转发80端口数据包给Node.js服务器

nginx日志切割shell脚本

精品推荐
分类导航