本文共 678 字,大约阅读时间需要 2 分钟。
#!/bin/bash
mysqldump="/usr/local/mysql/bin/mysqldump"bakuser="root"passwd='123456'bakdir="/usr/local/src/backup"#remote_dir="rsync://10.10.20.100/mysqlbak"d1=‘data +%F’d2=’data +%d‘#定义日志
exec &> /tmp/mysql_bak.logecho "mysql bakup begin at 'date'"#对所有数据库进行遍历for db in db1 db2 db3 db4 db5do$mysqldump -u$bakuser -p$passwd $db >$bakdir/$db-$d1.sqldone对一天前的所有sql文件压缩find $bakdir/ -type f -name "*.sql" -mtime +1 | xargs gzip查找一周以前的老文件,并删除find $bakdir/ -type f -mtime +7 | xargs rm把当天的备份文件同步到远程for db in db1 db2 db3 db4 db5 dorsync -a $bakdir/$db-$d1.sql $remote_dir/$db-$d2.sqldoneecho "mysql backup end at 'date'"转载于:https://blog.51cto.com/13120271/2317880