当前位置:Gxlcms > mysql > MySQL实现批量检查表并进行repair与optimize的方法

MySQL实现批量检查表并进行repair与optimize的方法

时间:2021-07-01 10:21:17 帮助过:31人阅读

本文实例讲述了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数据库计有所帮助。

您可能感兴趣的文章:

  • 实现MySQL定时批量检查表repair和优化表optimize table的shell脚本
  • mysql下优化表和修复表命令使用说明(REPAIR TABLE和OPTIMIZE TABLE)
  • 探讨Mysql中OPTIMIZE TABLE的作用详解
  • Mysql数据库之索引优化
  • Mysql性能优化案例 - 覆盖索引分享
  • 关于MySQL 优化的100个的建议
  • MySQL查询优化的5个实用技巧
  • mysql性能优化之索引优化
  • MySQL数据库修复方法(MyISAM/InnoDB)
  • MySQL数据库表修复 MyISAM
  • 教您修复mysql数据库的方法

人气教程排行