Linux web服务器数据备份

时间:2024-03-10 19:54:48

Linux web服务器数据备份

标签: linux 备份 web
 分类:

采用独立备份主机backup。每天web服务器0点备份

CentOS 6.5

web:nginx 

数据库:mysql 

 

服务器备份位置:

1、定时任务服务的配置文件 /var/spool/cron/

2、服务器配置文件 /etc/

3、用户家目录: /home/

4、root家目录:/root/

5、web服务器及数据库

/usr/local/nginx/     

mysqldump -uroot -p --all-databases --events > mysql.sql

 

1、安装rsync服务(备份主机作为server端,web服务器作为client端)

http://blog.csdn.net/yang_xu_1987/article/details/77981443

 

 

backup:192.168.137.128

web:192.168.137.129

2、web服务端(脚本新建后需授权)

#############################################################

web服务器:/root/script/backup_web.sh

#################backup_web.sh###############################

 

#!/bin/bash

#获取本机ip地址

backup_ip=` ifconfig|grep -A1 eth0|tail -1|awk -F \'[ :]+\' \'{print $4}\'`

#获取日期

backup_date=`date "+%Y%m%d"`

if  [ ! -d  /backup ]

then

mkdir /backup

fi

cd /backup

#删除上次备份文件

rm -rf /backup/*

#创建以日期为名的目录

mkdir $backup_date

cd $backup_date

tar -zcf {$backup_ip}_var_spool_cron.tar.gz  /var/spool/cron/

tar -zcf {$backup_ip}_etc.tar.gz  /etc/

tar -zcf {$backup_ip}_home.tar.gz  /home/ /root/

tar -zcf {$backup_ip}_web.tar.gz  /usr/local/nginx/

#备份mysql ,下面p后面是root密码

mysqldump -uroot -p123 --all-databases --events > {$backup_ip}_mysql.sql

#上传文件到backup服务器

rsync -avz /backup/ rsync://rsync@192.168.137.128/rsync --password-file=/etc/rsyncd.passwd

echo "文件已上传"

#############################################################

加入计划任务

crontab -e

0 0 * * * /root/script/backup_web.sh

----------------------------------------------------------------------------------------------------------

 

3、backup服务端

#############################################################

server服务端: /root/scripts/backup_server.sh

##################backup_server.sh#############################

#!/bin/bash

if  [ ! -d  /backup ]

then

mkdir /backup

fi

cd /backup

#删除15天之外的文件夹

find  /backup/* -type d -mtime +15|xargs rm -rf

echo "超过15天的文件已删除"

#############################################################

加入计划任务

crontab -e

0 1 * * * /root/scripts/backup_server.sh