MySQL rsync方式备份

回复 收藏
#! /bin/bash

exec 1>/var/log/mysqlbak.log 2>&1
data_source=/home/mysql/
backup_dir=/mnt/mysqlbak
remote_dir=1.2.3.4:/data/mysqlbak
n=`date +%d`
w=`date +%w`
echo backup of mysql begins at `date`
/etc/init.d/mysqld stop
p=/var/run/mysqld/mysqld.pid
        while ps -p $p >/dev/null;
        do
            sleep 1 && echo -n .
       done
sync;sync;sync;sleep 2;
rsync -aru --delete  $data_source/*  $backup_dir/mysql_$w/
/etc/init.d/mysqld start
echo backup of mysql  finished at `date`
rsync -aru --delete $backup_dir/mysql_$w/*  $remote_dir/mysql_$n/
echo remote backup of mysql  finished at `date`
2009-12-04 09:43 举报
已邀请:
0

阿铭 管理员

赞同来自:

注:该脚本分本地和远程,本地按星期备份,远程按月备份。
0

lyhabc

赞同来自:

sync;sync;sync;sleep 2;
还做一个刷盘的命令,够安全

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: