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 

 

你可能感兴趣的:(mysql,数据库,databases,休闲,opt)