ホームページ  >  記事  >  データベース  >  MySQL批量检查表的脚本_MySQL

MySQL批量检查表的脚本_MySQL

WBOY
WBOYオリジナル
2016-06-01 13:51:21949ブラウズ

在不知道mysqlcheck之前,移动了一台服务器上的数据库,到另一台服务器上,想看看哪个表被损坏了,不想在命令行一个一个执行,下面是我写的脚本

#!/bin/bash<br><br>pass="123456" #root's password<br>data_path="/home/mysql" #mysql's datadir<br><br>cd $data_path<br>for f1 in $(ls)<br>do<br>    if [ -d $f1 ];then<br>        if [ "mysql" != "$f1" -a "test" != "$f1" ];then #in<br>            cd $f1<br>            echo "I'm in "$f1<br>            for f2 in $(ls *.frm)<br>            do<br>                _file_name=${f2%.frm}<br>                echo $f1.$_file_name >> /tmp/check_table.log<br>                echo `date` >> /tmp/check_table.log<br>                mysql -h 127.0.0.1 -u root -p$pass -e "check table "$f1.$_file_name 2>&1 >> /tmp/check_table.log #optimize table<br>            done<br>            cd ..<br>        fi<br>    fi<br>done
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。