| 订阅 | 在线投稿
分享
 
 
 

Linux系统环境下双机/多机自动互备份方案

来源:互联网  宽屏版  评论
2008-06-12 07:24:40

问 题:两台LINUX服务器,每个服务器只有一个硬盘。所以备份的问题就显得特别重要。我们装有mysql数据库。当然同时也要解决mysql备份的问题。

目 的:host 机器(最终所有备份都在其上留备份)ship机器(保存host机器备份)

方 法:通过shell脚本,打包相关要备份的文件。然后通过ftp操作下载,上载完成解决方案。

两台机器root通过crontab让脚本在各自机器定时。

建议host 每天早上3点

建议ship 每天早上6点

注意点:

两台服务器系统时间最好相差不要超过1小时。

此脚本是每周礼拜6执行备份的。当然你也可以修改成每月或每天备份。

当然也可以修改成一个增量备份脚本。

具体脚本:

以下为host机器脚本

#//////////////host机器脚本///////////////

#! /bin/sh

HOST="abc.com"

USER="backup_use" #ship机器backup_use用户

PASSWORD="backup_use" #ship机器对应用户密码

BACKUPDIR="/home/backup_use/ship" #host机器backup_use用户目录

BACKUPDIR2="/home/backup_use/host" #host机器backup_use用户目录

MYSQLPASS="abc" #ship 机器mysql root 用户密码

PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/nusphere/mysql/bin

DOW=`date +%a`

DM=`date +%Y%b%d`

FILE1=ship-virtual-$DM.tar.gz

FILE2=ship-mysqldata-$DM.tar.gz

FILE3=ship-szeasy-$DM.tar.gz

FILE4=ship-other-$DM.tar.gz

#

FIL1=$BACKUPDIR2/host-main-$DM.tar.gz

FIL2=$BACKUPDIR2/host-mysqldata-$DM.tar.gz

FIL3=$BACKUPDIR2/host-other-$DM.tar.gz

#

DIRECTORIE1="/www /home/jjd" # 要备份的目录1

DIRECTORIE2="/etc /var/named /usr/local/nusphere/apache/conf" # 要备份的目录2

#

if [ $DOW = "Sat" ]; then # 每个礼拜六完全备份

tar -zcpf $FIL1 $DIRECTORIE1

tar -zcpf $FIL3 $DIRECTORIE2

mysqldump --all-databases -q -uroot -p$MYSQLPASS |gzip > $FIL2

ftp -i -n < $BACKUPDIR/$COMPUTER-mysqldata-$DM.tar.gz

fi

########################################################################

 
问 题:两台LINUX服务器,每个服务器只有一个硬盘。所以备份的问题就显得特别重要。我们装有mysql数据库。当然同时也要解决mysql备份的问题。 目 的:host 机器(最终所有备份都在其上留备份)ship机器(保存host机器备份) 方 法:通过shell脚本,打包相关要备份的文件。然后通过ftp操作下载,上载完成解决方案。 两台机器root通过crontab让脚本在各自机器定时。 建议host 每天早上3点 建议ship 每天早上6点 注意点: 两台服务器系统时间最好相差不要超过1小时。 此脚本是每周礼拜6执行备份的。当然你也可以修改成每月或每天备份。 当然也可以修改成一个增量备份脚本。 具体脚本: 以下为host机器脚本   #//////////////host机器脚本///////////////   #! /bin/sh   HOST="abc.com"   USER="backup_use" #ship机器backup_use用户   PASSWORD="backup_use" #ship机器对应用户密码   BACKUPDIR="/home/backup_use/ship" #host机器backup_use用户目录   BACKUPDIR2="/home/backup_use/host" #host机器backup_use用户目录   MYSQLPASS="abc" #ship 机器mysql root 用户密码   PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/nusphere/mysql/bin   DOW=`date +%a`   DM=`date +%Y%b%d`   FILE1=ship-virtual-$DM.tar.gz   FILE2=ship-mysqldata-$DM.tar.gz   FILE3=ship-szeasy-$DM.tar.gz   FILE4=ship-other-$DM.tar.gz   #   FIL1=$BACKUPDIR2/host-main-$DM.tar.gz   FIL2=$BACKUPDIR2/host-mysqldata-$DM.tar.gz   FIL3=$BACKUPDIR2/host-other-$DM.tar.gz   #   DIRECTORIE1="/www /home/jjd" # 要备份的目录1   DIRECTORIE2="/etc /var/named /usr/local/nusphere/apache/conf" # 要备份的目录2   #   if [ $DOW = "Sat" ]; then # 每个礼拜六完全备份   tar -zcpf $FIL1 $DIRECTORIE1   tar -zcpf $FIL3 $DIRECTORIE2   mysqldump --all-databases -q -uroot -p$MYSQLPASS |gzip > $FIL2   ftp -i -n < $BACKUPDIR/$COMPUTER-mysqldata-$DM.tar.gz   fi   ########################################################################
󰈣󰈤
 
 
 
>>返回首页<<
 
 热帖排行
 
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
©2005- 王朝网络 版权所有