在线备份

前一阵主机服务提供商The Planet的机房起火爆炸,服务器3天之内不能访问,10几个站点down掉,差点搞死我。以前一直就说搞个网上自动备份的方案,但一直犯懒拖着,这次让我感到了迫切性。找了半天,终于找到个自认为性价比颇高的方案,和大家分享一下。

首先在DreamHost购买了一年$119.40的一个虚拟主机,在网上找了个折扣码,实际只花了$69.4。大家可以用我制作的折扣码 OLDMONK1IP, 也是便宜50美元,还免费赠送一个独立IP。有了独立IP就不用担心会被GFW封掉了。 这个虚拟主机有500G硬盘空间,每周这个限制上调2G。每个月的带宽限制是5TB,每周上调40G;无限的数据库,支持shell,php,python,subversion,免费送一个国际域名,还可以绑定无限的域名。

在原先的网站创建backupsite.sh

#!/bin/sh

#备份数据库
/usr/local/bin/mysqldump -u[用户名] -p[口令] -h[主机地址] -f [数据库名] > ~/bk/doyjdb.bak
gzip -9 ~/bk/doyjdb.bak

 

#备份网站
#先删除旧的备份文件
rm -f ~/bk/doyjsitebk.tar.gz

#打包www目录
tar -cf ~/bk/doyjsitebk.tar -C / usr/www/doyj
gzip -9 ~/bk/doyjsitebk.tar

然后执行下面的命令,使其可执行

chmod 755 backupsite.sh

再把这个backupsite.sh加入到doyj.com的cron job中,每天执行一次。

dreamhost申请的虚拟主机中,创建downloadbk.sh

#!/bin/sh

#得到当前日期,为了给文件名加入日期戳
CURRENT_DATE=`date +%Y%m%d`

#算出一周前的日期,这是为了删除一周前的备份文件
REMOVE_DATE=`date +%Y%m%d -d " -7 day"`

#下载备份文件到backup目录
#下载数据库备份
wget –ftp-user=[口令] –ftp-password=[密码] ftp://www.doyj.com/bk/doyjdb.bak.gz -O ~/backup/doyjdb.$CURRENT_DATE.bak.gz

#下载www目录备份
wget –ftp-user=[口令] –ftp-password=[密码]  ftp://www.doyj.com/bk/doyjsitebk.tar.gz -O ~/backup/doyjsite.$CURRENT_DATE.tar.gz

 

#删除一周前的备份文件,这样保证只保存最近一个星期的备份
rm -f ~/backup/doyjdb.$REMOVE_DATE.bak.gz
rm -f ~/backup/doyjsite.$REMOVE_DATE.tar.gz

然后执行下面的命令,使其可执行

chmod 755 downloadbk.sh

再把downloadbk.sh加入到dreamhost虚拟主机的cron job中,让它在backupsite.sh执行二小时后再运行。

这两天想把dreamhost的域名目录什么的都设置好,然后每天用script下载完备份数据后,在dreamhost自动把数据恢复了。 这样一旦原先的服务器有问题,就只要修改dns,把站点指到dreamhost这台机器上来即可。如果能在shell中加入一些判断,备份出现问题时能发email通知就更好了,可惜我对shell编程不熟悉,欢迎大牛们来指点一二。

如果主机有cpanel系统,那就更简单,cpanel支持远程ftp自动备份的。

这套备份方案算起来每个月是$5.79,比the planet提供的10G备份空间每个月$20, 80G每个月$160要便宜多了,而且两个服务器分属不同公司,在两个物理位置不同的机房内,两者同时出问题的可能性极小。

现在唯一担心的就是dns修改起作用的时间,按照域名注册商的说明是需要48小时,如何能缩短这个时间呢?

9 Comments

  • By Shang Ning, 六月 19, 2008 @ 7:30 上午

    我去DreamHost看了一下,找到了你说的主机,但是他的提示上面说独立IP要单独支付每月3.95刀的费用,并不是免费提供的。

    请问一下,你文章中提到的免费IP是在购买DreamHost的虚拟主机后直接开通的、还是有什么特殊的优惠码而获得的?

  • By oldmonk, 六月 19, 2008 @ 9:02 上午

    [quote comment=””]我去DreamHost看了一下,找到了你说的主机,但是他的提示上面说独立IP要单独支付每月3.95刀的费用,并不是免费提供的。

    请问一下,你文章中提到的免费IP是在购买DreamHost的虚拟主机后直接开通的、还是有什么特殊的优惠码而获得的?[/quote]

    Promo Code输入 OLDMONK1IP 就可以免费得到一个独立IP和50美元优惠

  • By 小户, 六月 19, 2008 @ 5:45 下午

    老僧是不是有很多网站啊~~

  • By oldmonk, 六月 19, 2008 @ 9:16 下午

    [quote comment=”8578″]老僧是不是有很多网站啊~~[/quote]
    没有,大都是朋友的网站

  • By 小游, 九月 4, 2008 @ 4:45 下午

    [quote comment=””][quote comment=”8578″]老僧是不是有很多网站啊~~[/quote]
    没有,大都是朋友的网站[/quote]
    老僧有没有做SEO的经验?能否请教?

  • By 小游, 九月 4, 2008 @ 4:46 下午

    [quote comment=””][quote comment=””][quote comment=”8578″]老僧是不是有很多网站啊~~[/quote]
    没有,大都是朋友的网站[/quote]
    老僧有没有做SEO的经验?能否请教?[/quote]

  • By oldmonk, 九月 4, 2008 @ 10:12 下午

    [quote comment=””][quote comment=””][quote comment=””][quote comment=”8578″]老僧是不是有很多网站啊~~[/quote]
    没有,大都是朋友的网站[/quote]
    老僧有没有做SEO的经验?能否请教?[/quote][/quote]

    相互探讨没问题,请教谈不上

  • By kyobashi, 十月 6, 2008 @ 12:02 上午

    [quote comment=””][quote comment=””][quote comment=””][quote comment=””][quote comment=”8578″]老僧是不是有很多网站啊~~[/quote]
    没有,大都是朋友的网站[/quote]
    老僧有没有做SEO的经验?能否请教?[/quote][/quote]

    相互探讨没问题,请教谈不上[/quote]

    老僧你好
    你有没有独立做网站的经验?如果可以,我想和你祥谈一下具体报价和细节
    可以加我的msn或者mail回复我

  • By oldmonk, 十月 8, 2008 @ 12:15 上午

    [quote comment=””][quote comment=””][quote comment=””][quote comment=””][quote comment=””][quote comment=”8578″]老僧是不是有很多网站啊~~[/quote]
    没有,大都是朋友的网站[/quote]
    老僧有没有做SEO的经验?能否请教?[/quote][/quote]

    相互探讨没问题,请教谈不上[/quote]

    老僧你好
    你有没有独立做网站的经验?如果可以,我想和你祥谈一下具体报价和细节
    可以加我的msn或者mail回复我[/quote]

    惭愧,承蒙看得起,可是很抱歉,我做网站水平很差,不提供这种服务

Other Links to this Post

RSS feed for comments on this post. TrackBack URI

Leave a comment

  • :em48:
  • :em32:
  • :em34:
  • :em14:
  • :em72:
  • :em37:
  • :em53:
  • :em56:
  • :em25:
  • :em39:
  • :em04:
  • :em13:
  • :em38:
  • :em20:
  • :em41:
  • :em31:
  • :em16:
  • :em45:
  • :em21:
  • :em43:
  • :em12:
  • :em71:
  • :em11:
  • :em23:
  • :em46:
  • :em66:
  • :em47:
  • :em02:
  • :em49:
  • :em54:
  • :em27:
  • :em36:
  • :em35:
  • :em15:
  • :em05:
  • :em26:
  • :em44:
  • :em06:
  • :em64:
  • :em01:
  • :em55:
  • :em70:
  • :em28:
  • :em40:
  • :em67:
  • :em18:
  • :em63:
  • :em09:
  • :em10:
  • :em62:
  • :em69:
  • :em03:
  • :em08:
  • :em33:
  • :em42:
  • :em52:
  • :em51:
  • :em68:
  • :em30:
  • :em65:
  • :em59:
  • :em29:
  • :em07:
  • :em50:
  • :em17:
  • :em24:
  • :em57:
  • :em22:
  • :em19:
  • :em60:
  • :em61:
  • :em58: