当前位置导航:炫浪网>>网络学院>>操作系统>>Linux教程

Linux环境下双机(多机)自动互备份方案


  问 题:我们公司有两台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
  
  ########################################################################
  
  Jp
  
相关内容
赞助商链接