mysql backup 脚本

网上备份脚本很多,但考虑都不周全。这里增加了

Java代码  mysql backup 脚本
  1. umask 0077  

保证创建备份文件只能是创建者跟root可以访问,其他用户没有权限,保证了数据库备份的安全。

Java代码  mysql backup 脚本
  1. find $BACKUP_DIR -type f -mtime +$COPIES -delete  

上面脚本是负责备份的份数管理,

 

Java代码  mysql backup 脚本
  1. #!/bin/bash  
  2. ###################################  
  3. # $Id: backup 380 2012-04-02 10:38:59Z netkiller $  
  4. # Author: netkiller@msn.com  
  5. # Home: http://netkiller.github.com  
  6. ###################################  
  7. BACKUP_HOST="localhost"  
  8. BACKUP_USER="root"  
  9. BACKUP_PASS=""  
  10. BACKUP_DIR=/opt/backup  
  11. BACKUP_DBNAME="test neo"  
  12. #Number of copies  
  13. COPIES=7  
  14. ####################################  
  15. MYSQLDUMP="mysqldump"  
  16. #TIMEPOINT=$(date -u +%Y-%m-%d)  
  17. TIMEPOINT=$(date -u +%Y-%m-%d.%H:%M:%S)  
  18. MYSQLDUMP_OPTS="-h $BACKUP_HOST -u$BACKUP_USER -p$BACKUP_PASS"  
  19. ####################################  
  20. umask 0077  
  21. test ! -d "$BACKUP_DIR" && mkdir -p "$BACKUP_DIR"  
  22. test ! -w $BACKUP_DIR && echo "Error: $BACKUP_DIR is un-writeable." && exit 0  
  23.   
  24. for dbname in $BACKUP_DBNAME  
  25. do  
  26.     test ! -d "$BACKUP_DIR/$dbname" && mkdir -p "$BACKUP_DIR/$dbname"  
  27.   
  28.     $MYSQLDUMP $MYSQLDUMP_OPTS $dbname | gzip > $BACKUP_DIR/$dbname/$dbname.$TIMEPOINT.sql.gz  
  29. done  
  30. find $BACKUP_DIR -type f -mtime +$COPIES -delete  
 
上一篇:SQL点滴12—SQL Server备份还原数据库中的小把戏


下一篇:使用SQL Server作业设置定时任务