温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

批量检查表并进行repair,optimize的方法

发布时间:2020-09-14 14:23:36 来源:亿速云 阅读:145 作者:小新 栏目: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命令,此方法可以在检查表并自动修复损坏的表,不过该过程比较耗时。

感谢各位的阅读!看完上述内容,你们对批量检查表并进行repair,optimize的方法大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI