VPS折腾笔记之VPS备份
客户查询网整理 发布日期:2014/5/12 0:00:00

  博客或网站的备份是很重要的一个工作,因为经常会有一些VPS和空间商倒闭或跑路。而备份很重要的一点是异地备份,因为如果把备份仍然放在VPS上,很容易同博客一起全军覆没。如果每天手动将VPS上的数据备份,再下载到本身会耗费大量的时间和精力,老耿这几天折腾VPS,在网上查了很多关于网站备份的资料,总结出两种异地备份的方式,当然是自动进行的。

  一种是通过脚本自动将数据打包通过FTP上传到Godaddy的免费空间上,另一种是使用dropbox来备份,这两种方式各有优缺点,下面来详细介绍一下网站推广

  自动将VPS数据备份到Godaddy免费空间

  因为在Godaddy上每注册一个域名,就会免费提供一个容量10G,每月流量300G的免费空间,在页面上方会有一个大大的广告,所以很少有人会用这个免费空间来建立网站,但用来备份VPS上的数据却是很适合的,服务器之间的速度是非常快的,几十M的数据传输,也是一瞬间的事儿。

  这种方式的原理是将网站/博客的数据库和数据打包,通过FTP的方式上传到Godaddy的免费空间上,所以先需要在VPS上安装一个lftp,登陆到SSH客户端,输入:

  yum -y installlftp

  每天自动备份数据库

  首先建立一个自动备份数据库的脚本,内容如下:

  #!/bin/bash

  /usr/local/mysql/bin/mysqldump -uusername -ppassword --databases blog > /home/wwwroot/backup/databackup_$(date +%Y%m%d).sql

  tar zPcf /home/wwwroot/backup/databackup_$(date +%Y%m%d).sql.tar.gz /home/wwwroot/backup

  /usr/bin/lftp -u ftpusername,ftppassword ftpip/backup -e "put /home/wwwroot/backup/databackup_$(date +%Y%m%d).sql.tar.gz;exit"

  rm -r /home/wwwroot/backup/*

  第一段中需要将username和password替换成数据库的用户名和密码,注意与-u和-p之间不要有空格,意思是备份数据库,并在/home/wwwrott/backup下生成一个按日期命令的文件。可以先通过SSH客户端或WinSCP来查看mysqldump是否在/usr/local/mysql/bin/目录下。将/home/wwwroot/backup/修改为自己的目录。

  第二段是将这个backup中的文件(其实就是刚刚的备份)压缩。

  第三段中需要将ftpusername、ftppassword、ftpip分别替换成Godaddy中FTP的连接信息,意思是将第二段中打好的压缩包上传到Godaddy的免费空间上去。可以直接上传到根目录,不过最好是在Godaddy中新建一个FTP帐号和目录来保存这些备份。

  第四段是将backup这个目录中所有的文件删除。

  建议使用WinSCP来建立脚本,因为WinSCP中带的编辑器有点类似记事本,使用起来比较方便,比如在/usr/local/nginx/conf目录中建立一个名为dbbackup.sh的文件,然后将上述脚本代码拷进去,把一些信息修改为自己的后保存即可。

  检查脚本运行,可以直接在SSH客户端中输入:

  sh /usr/local/nginx/conf/dbbackup

  检查脚本运行是否成功。

  使用SSH客户端进入到dbbackup.sh所在的目录,修改脚本权限:

  chmod +x dbbackup.sh

  然后将dbbackup.sh添加到计划任务当中:

  crontab –e

  按“i”键编辑,并添加一行:

  0 0 * * * sh /usr/local/nginx/conf/dabackup.sh

  输入完成后按ESC键退出编辑,输入:wq保存,建立的这个计划任务会保存在/var/spool/cron/root中。意思是每天0点0分时自动运行这个脚本实现每天自动数据库的备份网络推广

  每周自动备份博客/网站数据

  同样,先建立脚本:

  #!/bin/bash

  tar zPcf /home/wwwroot/backup/blogbackup_$(date +%Y%m%d).tar.gz /home/wwwroot/

  /usr/bin/lftp -u ftpusername,ftppassword ftpip/backup -e "put /home/wwwroot/backup/blogbackup_$(date +%Y%m%d).tar.gz;exit"

  rm -r /home/wwwroot/backup/*

  同样需要将ftpusername、ftppassword、ftpip分别替换成Godaddy中FTP的连接信息,将/home/wwwroot/修改为你需要备份的目录,保存为blogbackup.sh,然后测试脚本是否可以正常运行。


  
信息网址:http://www.khcha.com/ziyuan/view11843.htm
相关信息