一键备份网站脚本

存为sh文件,执行 xxx.sh 域名 数据库名

备份好以后,另行定时rsync同步到其它机器,或者在其它机器定时wget等

#!/bin/bash

#MYSQL用户名
mysql_user=""
#MYSQL密码
mysql_password=""
#www文件存放目录
www_dir=/home/www
#conf目录
conf_dir=/etc/nginx/sites
#备份文件存放目录
backup_location=/home/www/backup
#上面是要配置的部份

www=$1
dbname=$2
backup_dir=$backup_location/$www
if [ ! -d "$backup_dir" ]; then
  mkdir -p $backup_dir
fi
cd $backup_dir

echo "==========nginx www backup start..."
\cp -f $conf_dir/$www.conf ./
rsync -a --delete --exclude cache $www_dir/$www $backup_dir
cd $backup_dir
tar zcf $www.tar.gz * --remove-files

echo "==========database $dbname backup start..."
mysqlhotcopy --user=$mysql_user --password=$mysql_password $dbname $backup_dir
cd $backup_dir
tar -zcf $dbname.tar.gz $dbname
rm -rf $backup_dir/$dbname
echo "==========database $dbname success backup to $backup_dir/$dbname.tar.gz"

文章出处http://www.hostloc.com/thread-314905-1-1.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注