Dreamhost空间单用户多网站备份脚本

代码如下,未测试

有任何建议请和我联系

部份程序参考 http://www.icnote.com/DreamHost-Auto-back-up/

Bash语言: Codee#11847
#工具信息
TAR=`which tar`
MYSQLDUMP=`which mysqldump`

#网站信息
SiteRoot=/home/icnote/
SITE=(‘site1′ ‘site2′ ‘site3′)
#DB INFo
DBNames=(‘dbname1′ ‘dbname2′ ‘dbname3′) #数据库名
DBUsers=(‘username1′ ‘username2′ ‘username3′#数据库用户名
DBPasswds=(’1′ ’2′ ’3′#数据库密码
DBHosts=(‘host1′ ‘host2′ ‘host3′) #数据库地址
DBCharsets=(‘utf8′ ‘utf8′ ‘utf8′)

#路径
BackupPath=/home/hexuzhong/backup/$(date +%y%m%d)/
# 备份文件存放目录
if [ -d $BackupPath ]
then
  rm -rf “$BackupPath”*
else
  mkdir $BackupPath
  chmod 755 $BackupPath -R
fi
LogFile=“$BackupPath”backUp.log

numvalues=${#SITE[@]}
for (( i=1; i < numvalues; i++ )); do
   
    domain=${SITE[i]}
    cd $BackupPath
    ##路径信息
    SiteDir=$SiteRoot$domain
    TempSqlFileName=“$BackupPath$domain”tempSQL.sql
    SiteBackUpName=“$BackupPath$domain”web$(date +%y%m%d).tar.gz
    DBDumpFileName=“$BackupPath$domain”db$(date +%y%m%d).sql.tar.gz

    ###数据库信息###
    DBHost=${DBHosts[i]}
    DBUser=${DBUsers[i]}
    DBPasswd=${DBPasswds[i]}
    DBName=${DBNames[i]}
    DBCharset=${DBCharsets[i]}

    echo “——————————————-” >> $LogFile
    echo $(date +“%y-%m-%d %H:%M:%S”) >> $LogFile
    echo “————————–” >> $LogFile
    echo “Site $domain back up start………….” >> $LogFile
    echo “Web $domain files back up start………….” >> $LogFile

    if [ -f $SiteBackUpName ]
    then
      echo “[$SiteBackUpName]The Backup File is exists,Can’t Backup!” >> $LogFile
    else
      $TAR czvf $SiteBackUpName $SiteDir >> $LogFile
      echo “[$SiteBackUpName]Backup Success!” >> $LogFile
    fi

    echo “Web files back up finished!” >> $LogFile
    echo “Now database dump start” >> $LogFile

    if [ -f $DBDumpFileName ]
    then
      echo “[$DBDumpFileName]The Backup File is exists,Can’t Backup!” >> $LogFile
    else
      $MYSQLDUMP -h$DBHost -u$DBUser -p$DBPasswd –default-character-set=$DBCharset –opt $DBName > $TempSqlFileName
      $TAR czvf $DBDumpFileName $TempSqlFileName >> $LogFile
      rm -rf $TempSqlFileName
      echo “[$DBDumpFileName] Backup Success!” >> $LogFile
    fi

    echo “Now database dump finished!” >> $LogFile
    echo “The whole backup task completed at “$(date +“%y-%m-%d %H:%M:%S”) >> $LogFile
    echo “########################################” >> $LogFile
done

Google Reader Yahoo Facebook Twitter Digg FriendFeed Delicious Google Translate
This entry was posted onJune 30th, 2010 at 23:47. You can follow any responses to this entry through the RSS 2.0. Responses are currently closed, but you can Trackback..

One Response

Comments(0)Trackbacks(1)

  1. [...] Dreamhost空间单用户多网站备份脚本 [...]