MYSQL整理数据库碎片SHELL脚本

本文介绍了一款用于 MySQL 数据库优化的 shell 脚本。该脚本能够遍历除预设数据库外的所有数据库,并对每个数据库中的所有表进行优化操作。同时,脚本记录了开始和结束时间,方便评估优化过程所需的时间。

 

  1. #!/bin/sh  
  2. mysql_user=root   
  3. mysql_pass=123123  
  4. time_log=/opt/time 
  5. databases=/opt/databases  
  6. /usr/bin/mysql -u$mysql_user -p$mysql_pass -e "show databases" | grep -v "Database" > /opt/databases  
  7. sed -i "s/information_schema//" $databases  
  8. sed -i "s/mysql//" $databases  
  9. sed -i "s/test//" $databases  
  10. databases1=$(cat /opt/databases)  
  11. for i in $databases1  
  12. do  
  13. echo "database $i starting" 
  14. tables=$(/usr/bin/mysql $i -u$mysql_user -p$mysql_pass -e "show tables" | grep -v "Tables" > /opt/$i)  
  15. tablelist=$(cat /opt/$i)  
  16. echo "optimize database $i starting" >> $time_log  
  17. echo "$i start at $(date  +[%Y/%m/%d/%H:%M:%S])" >> $time_log  
  18. for list in $tablelist  
  19. do  
  20. echo $list  
  21. /usr/bin/mysql $i -u$mysql_user -p$mysql_pass -e "optimize table $list" 
  22. done  
  23. echo "$i end   at $(date  +[%Y/%m/%d/%H:%M:%S])" >> $time_log  
  24. echo >> $time_log  
  25. done 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值