当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > 双机(多机)自动互备份方案

Unix/Linux
linux 操作技巧收集_
linux下如何读取使用iso 镜像文件的方法
Linux平台下文件的压缩与解压参数说明
Linux下常用压缩格式的压缩与解压方法
Linux JDK,TOMCAT安装及环境设置
Linux sleep命令使用参数
Linux cat命令参数
nfs 配置的简单例子
linux kill 关闭进程命令
linux ultrasphinx Anonymous modules have no name to be referenced by
Linux oracle 9i图文安装方法一
Linux oracle 9i图文安装教程二
Linux oracle 9i图文安装教程三
Linux oracle 9i图文安装教程四
Linux oracle 9i图文安装教程五
Linux oracle 9i图文安装教程六 完结篇
linux AS3 oracle9i 安装指南
Linux 下 (RedHat 9.0) JDK,Tomcat,MySQL的安装
RedHat 9.0下Apache+PHP+MySQL服务器安装配置
Linux 下用 Python 连接 MSSql Server 2008

Unix/Linux 中的 双机(多机)自动互备份方案


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 49 ::
收藏到网摘: n/a

  关 键 字:shell ftp tar mysql  crontab

问    题:我们公司有两台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

            jinjidong
            [email protected]