服务器备份攻略

来源:互联网 发布:如何防御sql注入攻击 编辑:程序博客网 时间:2024/05/05 15:36

原文链接:http://www.cnblogs.com/ma6174/archive/2012/07/31/2616498.html

本文主要讲解如何用git备份服务器数据

服务器端:

1.如果没有git,先安装:sudo apt-get install git-all

2.假如要备份文件夹~/backup,先初始化git

cd ~/backup  
git init
git add .

git commit -m "first commit" 

3.写一个备份脚本,vi ~/backup.sh ,内容如下

cd ~/backup
git add .

git commit -m "back up" 

4.让脚本定期执行,假设我们每天23:30执行备份脚本,可以加入Linux任务计划

在终端输入命令:crontab -e

在最后一行加入以下内容:

30 23 * * * ~/backup.sh

 

 

这样服务器就会在23:30自动备份文件夹。仅仅在服务器上备份是不够的,有必要把服务器上的数据再备份到本地计算机上

本地 

1.设置本机与服务器免输密码自动登录,可以参考这里: http://www.cnblogs.com/ma6174/archive/2012/05/26/2519458.html

2.首次用git来clone服务器数据(git装了吗?):

  git clone ssh://[username]@[ipaddress]:[port]/home/[username]/backup/.git 

3.写一个自动获取远程更新的脚本vi ~/backup.sh:

#!/bin/bash
cd ~/backup/
git fetch origin

git merge origin/master 

4.把脚本加入linux任务计划。(参考服务器端配置第4条)

 

总结:

1.上面仅仅是备份一个文件夹(比如网站文件夹),如果备份数据库可以用命令将数据库导入到文件夹里面,例如mysql可以用这条命令

mysqldump --all-databases -u[username] -p[password] >~/backup/database.sql

然后将这条命令放到刚才的自动执行脚本就能定期备份数据库了

2.定期查看git备份日志:git log ,检查是否按时备份,备份是否正常

3.用git备份的优点是可以进行版本控制,可以查看版本更新,并且可以恢复到以前任何一个版本,有关git的相关知识可以参考这里:

http://note.sdo.com/u/ma6174/c/M5cEN~k14xk0LX0TQ000Ag
0 0