shell備份msyql數據庫

#!/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.log
echo "mysql bakup begin at 'date'"
#對所有數據庫進行遍歷
for db in db1 db2 db3 db4 db5
do
$mysqldump -u$bakuser -p$passwd $db >$bakdir/$db-$d1.sql
done
對一天前的所有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
do
rsync -a $bakdir/$db-$d1.sql $remote_dir/$db-$d2.sql
done
echo "mysql backup end at 'date'"

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章