精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>电脑技术>>● FreeBSD>>各种应用>>镜象与备份>>双机(多机)自动互备份方案

主题:双机(多机)自动互备份方案
发信人: zhcharles(小传)
整理人: zhcharles(2002-01-30 15:53:44), 站内信件

                      双机(多机)自动互备份方案: 
关键字:shell ftp tar mysql  crontab 
问    题:我们公司有两台LINUX服务器,每个服务器只有一个硬盘。所以 
                 备份的问题就显得特别重要。我们装有mysql数据库。当然同时也要解 
                 决mysql备份的问题。 
目   的:host 机器(最终所有备份都在其上留备份) 
              ship机器(保存host机器备份) 
方   法:通过shell脚本,打包相关要备份的文件。然后通过ftp操作下载, 
              上载完成解决方案。 
      两台机器root 通过crontab 让脚本在各自机器定时。 
      建议host 每天早上3点 
      建议ship 每天早上6点 
注意点: 
      两台服务器系统时间最好相差不要超过1小时。 
      此脚本是每周礼拜6执行备份的。当然你也可以修改成每月或每天备份。 
      当然也可以修改成一个增量备份脚本。 
其他: 
              任何问题沟通请联系[email protected] 欢迎交流 
    
具体脚本: 
以下为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 <<HERE
open $HOST
user $USER $PASSWORD
get $FILE1 $BACKUPDIR/$FILE1
get $FILE2 $BACKUPDIR/$FILE2
get $FILE3 $BACKUPDIR/$FILE3
get $FILE4 $BACKUPDIR/$FILE4
cd host
put $FIL1 host-main-$DM.tar.gz
put $FIL2 host-mysqldata-$DM.tar.gz
put $FIL3 host-other-$DM.tar.gz
cd ..
del $FILE1
del $FILE2
del $FILE3
del $FILE4
close
quit
HERE
# rm -rf $FIL1
# rm -rf $FIL2
# rm -rf $FIL3
fi

以下为host机器脚本
#//////////////////////////////////////////////////////ship机器脚本//////////////////////////////////////////////////////////////////////
#!/bin/sh

COMPUTER="ship" # 计算机名称
DIRECTORIE1="/home/virtual_host" # 要备份的目录
DIRECTORIE2="/www/htdocs/shenzhen"
DIRECTORIE3="/etc /var/named /usr/local/nusphere/apache/conf"
BACKUPDIR="/home/backup_use" # 储存备份的目录
MYSQLPASS="ship" #ship 机器mysql root 用户密码


#You should not have to change anything below here

PATH=/usr/local/bin:/usr/bin:/bin
DOW=`date +%a` # Day of the week e.g. Mon
DM=`date +%Y%b%d` # Date and Month e.g. 27Sep

if [ $DOW = "Sat" ]; then # 每个礼拜天完全备份
tar -zcpf $BACKUPDIR/$COMPUTER-virtual-$DM.tar.gz $DIRECTORIE1
tar -zcpf $BACKUPDIR/$COMPUTER-szeasy-$DM.tar.gz $DIRECTORIE2
tar -zcpf $BACKUPDIR/$COMPUTER-other-$DM.tar.gz $DIRECTORIE3
mysqldump --all-databases -q -uroot -p$MYSQLPASS |gzip > $BACKUPDIR/$COMPUTER-mysqldata-$DM.tar.gz 
fi  
 
 


----
 
A:哦,这是您新版的女朋友吗?
B:是呀!
A:在哪下载的?
B:就在“美女.com” 罗!
A:快不快?
B:用宽频的话,也要等一个多小时!
A:我怎么下载不了?
B:美女不是这样下载的!
A:难道要腰马合一?
B:对!
A:哦,听讲这网站要收费的!
B:是呀!现在网络泡沫爆破,个个都说“天下没有白吃的午餐”。
A:也是呀!您用完借给我可以吗?
B:这可是盗版呀!
A:没问题啦!现在到处是盗版啦!这不是 OEM 别个网站的吧?
B:应该不是吧!其实我也不太清楚!
A:哦,那好吧。用完记得借给我!!!
B:好的。
 
--
 
情越真,妒越深。夜半哀音,传奇一生!
 
小传 ( Charles Feng ) [email protected]   OICQ:17866295         
     

 
       

[关闭][返回]