MySQL实现批量检查表并进行repair与optimize的方法
2024-10-19 04:29:14
这篇文章主要介绍了MySQL实现批量检查表并进行repair与optimize的方法,结合实例形式分析了MySQL批量修复与优化表的相关技巧,需要的朋友可以参考下
本文实例讲述了MySQL实现批量检查表并进行repair与optimize的方法。分享给大家供大家参考,具体如下:
以下是shell的参考代码:
#!/bin/bash
host_name=192.168.0.123
user_name=xiaomo
user_pwd=my_pwd
database=my_db_name
need_optmize_table=true
tables=$(mysql -h$host_name -u$user_name -p$user_pwd $database -A -Bse "show tables")
for table_name in $tables
do
check_result=$(mysql -h$host_name -u$user_name -p$user_pwd $database -A -Bse "check table $table_name" | awk '{ print $4 }')
if [ "$check_result" = "OK" ]
then
echo "It's no need to repair table $table_name"
else
echo $(mysql -h$host_name -u$user_name -p$user_pwd $database -A -Bse "repair table $table_name")
fi
# 优化表,可提高性能
if [ $need_optmize_table = true ]
then
echo $(mysql -h$host_name -u$user_name -p$user_pwd $database -A -Bse "optimize table $table_name")
fi
done
也可以使用mysqlcheck命令,此方法可以在检查表并自动修复损坏的表,不过该过程比较耗时。
更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》、《MySQL数据库锁相关技巧汇总》及《MySQL常用函数大汇总》
希望本文所述对大家MySQL数据库计有所帮助。
最新文章
- RSA3:预提取数据
- iOS - 开发类库
- android5.x以上 状态栏透明的问题
- How to Call a synchronize function asynchronizly in C#
- Mysql支持中文全文检索的插件mysqlcft-应用中的问题
- Java Servlet的配置文件web.xml配置内容和具体含义
- Perl语言学习笔记 9 正则表达式处理文本
- Linq 更改主键值
- spring的applicationContext.xml配置SessionFactory抛异常
- CentOS恢复root口令方法
- Python2与Python3字符编码的区别
- 使用loki+ mtail + grafana + prometheus server分析应用问题
- android studio 使用总结
- C语言:存取结构体成员的点运算符(.)和箭头运算符(->;)的区别
- datename和datepart
- 监控cpu、内存 <;shell>;
- Metronic V1.5.2 Responsive Admin Dashboard Template build with Twitter Bootstrap 3.0
- [pwm]PWM的输入捕捉模式
- BZOJ2844:albus就是要第一个出场——题解
- float 与 double