shell判端mysql数据库是否存在_Shell脚本检测和检查mysql数据库是否存在坏表
shell脚本检测和检查mysql数据库是否存在坏表
此脚本的主要用途是检测mysql服务器上所有的数据库或者单独数据库中的坏表,适用于RHEL/Centos系列
#!/bin/bash
#此脚本的主要用途是检测mysql服务器上所有的db或者单独db中的坏表
#变量说明 pass mysql账户口令 name mysql账号名称 data_path mysql目录路径
#directory_list 目录列表 file_list文件列表 db_name 数据库名称 repair_count单库中待修复的表总数
#变量说明 repair_count_all所有库中待修复的表总数 mysql_version mysql版本 _file_name 数据表名称
echo -e "此脚本的主要用途是检测mysql服务器上所有的数据库或者单独数据库中的坏表\n\n"
pass=123456
name=root
read -p "输入mysql存储路径: " choose
data_path=$choose
unset choose
read -p "请输入mysql命令路径: " mysql_version
#标准输入、标准输出、标准错误输出的文件标示符 由 0、1、2标识
read -p "请选择是检查服务器上所有数据库还是指定的数据库 1:检查全部数据库
2:只检查指定数据库: " choose
if [ $choose == 1 ]; then
cd $data_path
for directory_list in $(ls)
do
if [ -d $directory_list ];then
if [ "mysql" != "${directory_list}" -a "test" != "${directory_list}" ];then
cd ${directory_list}
echo "当前检查数据库为:"${directory_list}
for file_list in $(ls *.frm)
do
_file_name=${file_list%.frm}
echo -e "\n" >> /tmp/check_table_all.log
${mysql_version} -h 127.0.0.1 -u${name} -p${pass} -e "
check table "${directory_list}.${_file_name} 2>&1 >> /tmp/check_table_all.log
done
cd ..
fi
fi
done
cat /tmp/check_table_all.log | grep "Table is marked as
crashed" > /tmp/check_table_repair.log
repair_count_all=` awk 'END{print NR}' /tmp/check_table_repair.log `
echo -e "所有数据库用有${repair_count_all}张表需要修复!"
more /tmp/check_table_repair.log
else
read -p "请输入要检查的数据库名称: " db_name
cd ${data_path}/${db_name}
for file_list in $(ls *.frm)
do
_file_name=${file_list%.frm}
echo -e "\n" >> /tmp/check_${db_name}.log
${mysql_version} -h 127.0.0.1 -u${name} -p${pass} -e "check table
"${db_name}.$_file_name 2>&1 >> /tmp/check_${db_name}.log
done
cat /tmp/check_${db_name}.log | grep "Table is marked as crashed
" > /tmp/check_${db_name}_Repair.log
repair_count=`awk 'END{print NR}' /tmp/check_${db_name}_Repair.log`
echo -e "${db_name}中共有${repair_count}个表需要修复!\n "
more /tmp/check_${db_name}_Repair.log
fi
shell判端mysql数据库是否存在_Shell脚本检测和检查mysql数据库是否存在坏表相关推荐
- 自动清理mysql的lock进程的脚本_自动清理MySQL的Lock进程的脚本
自动清理MySQL的Lock进程的脚本 作者:小涵 | 来源:互联网 | 2018-07-13 21:01 阅读: 915 最近数据库服务器在某一时段进程数忽然暴增,导致数据库服务器死掉,根据日志查询 ...
- 导出远程mysql数据库中的表_shell脚本实现导出远程mysql数据库表数据至本地
bin/main.sh脚本内容 #!/bin/bash #作用:用于同步远程mysql数据库表数据至本地 #作者:丁艺博 source /etc/profile source ~/.bash_prof ...
- mysql5.7.21备份脚本_Shell脚本使用汇总整理——mysql数据库5.7.8以后备份脚本
#!/bin/sh #db_backups_conf.txt文件路径 db_backups_conf="/wocloud/shell/db_backups_conf.txt" #判 ...
- linux mysql cpu 查看工具_Shell编程检测监控MySQL的CPU占用率
shell编程很强大!网站访问量大的时候MySQL的压力就比较大,当mysql的CPU利用率超过300%的时候就不能提供服务了,近乎卡死状态,这时候最好的方法就是重启mysql服务.由于这种事具有不可 ...
- shell最大出现和连续出现次数_shell脚本分析 nginx日志访问次数最多及最耗时的页面(慢查询)...
当服务器压力比较大,跑起来很费力时候.我们经常做站点页面优化,会去查找那些页面访问次数比较多,而且比较费时. 找到那些访问次数高,并且比较耗时的地址,就行相关优化,会取得立竿见影的效果的. 下面是我在 ...
- shell 取中间行的第一列_shell脚本的使用该熟练起来了,你说呢?(篇三)
继续前一篇的文章: shell脚本的使用该熟练起来了,你说呢?(篇一) shell脚本的使用该熟练起来了,你说呢?(篇二) 文章里面测试的命令脚本文件,大家关注我公众号后,可以私信我领取文件. 作者: ...
- 使用MySQLTuner脚本检测、优化MySQL数据库
MySQLTuner 是一个 Perl 脚本,可以用来分析您的 MySQL 性能,并且基于收集到的信息给出相应的优化建议.这样子,您就可以调整 my.cnf 从而优化您的 MySQL 设置. 这边只是 ...
- mysql检查存在_如何检查MySQL中是否存在行?(即检查MySQL中是否存在电子邮件)...
小编典典 以下是经过尝试,测试和证明的检查行是否存在的方法. (其中一些我自己使用,或者过去使用过). 编辑: 我在使用mysqli_query()两次的语法中犯了一个先前的错误.请查阅修订版本. 即 ...
- 自动获取mysql建表语句_脚本工具---自动解析mysql建表语句,生成sqlalchemy表对象声明...
常规建表语句: CREATE TABLE `test_table` ( `id` int(11) NOT NULL, `name` char(64) NOT NULL, `password` char ...
最新文章
- 增值税发票OCR识别
- DOM-添加元素、节点
- RBF(径向基)神经网络 非线性函数回归的实现
- 【QM-04】Inspection Characteristic(检验特征)
- c++ 12.一维数组冒泡排序
- 使用Spark构建简单的RESTful API
- 日志单例log4cpp简述
- 今日恐慌与贪婪指数为38 恐慌程度明显上升
- 为什么C# md5 32位加密算法,密码明文会出现31位
- awksed story
- 对象 'dbo.xxx' 不存在,或对此操作无效。为表创建触发器,为什么提示对象不存在?
- RedisRepository封装—Redis发布订阅以及StackExchange.Redis中的使用
- Maven scope中import的作用
- db4o_8.0对象数据库官方文档翻译_学习笔记四
- BUS hound使用
- css椭圆轨迹运动动画
- 2022年搜索引擎研究报告
- 端到端语音识别 ESPnet ASR脚本流程(asr.sh)
- C——esc按键按下与识别
- 计算机制作卡通插画,​电脑制作漫画有哪些方法?
热门文章
- python乒乓球比赛规则介绍_乒乓球的比赛规则介绍
- libvirt Installation
- 推荐一个看ELF文件的软件 010Editor
- 如何证明CPU的乱序执行(Out-of-order Execution)?
- Linux虚拟化:Virtio: 一个 I/O 虚拟化框架
- CentOS7 搭建基于DPDK的FD.io VPP环境-1
- python 去掉转义字符_python前期准备
- Django:ORM基本操作-CRUD,管理器对象objects,----->查询1(all,values,values_list,order_by)
- python之集合操作
- java工厂模式学习