如何批量检查表并进行repair,optimize


当前第2页 返回上一页

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

#!/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的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

如何批量检查表并进行repair,optimize

更多相关阅读请进入《repair》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...