Heroku PGBackups附加组件:为什么选择除了免费的一个月保留选项之外的任何东西?

时间:2012-03-29 16:19:34

标签: heroku

我正在研究Heroku rails应用程序的数据库备份选项,看起来免费的PGBackups add-ons效果很好。

然而,我对选项感到困惑。他们是:

Basic - 2 manual back-ups
Plus - 7 manual back-ups
Auto One Week - 7 automatic daily and 2 manual
Auto One Month - 7 automatic daily, 5 automatic weekly, 10 manual

他们都是自由的。我必须在这里遗漏一些东西,因为我不明白为什么你会选择除了最后一个选项。我缺少一个缺点吗?我应该在这里权衡利弊是什么?

5 个答案:

答案 0 :(得分:7)

这个添加有点用词不当。对于初学者来说,Heroku上的所有数据库都由Heroku备份,并且作为其灾难恢复过程的一部分可以恢复,所以你根本不需要自己做备份,说实话,但比抱歉更安全。

然而,安心是一件好事,如果您想定期自己的数据库SQL转储,那么选择其中一个选项取决于您。如果你是偏执狂,请选择最后一个选项。如果您只是在运行暂存环境,请选择第一个,这取决于您。

请注意,PGBackups转储会进入他们的S3存储桶,因此如果您需要自己的副本,则需要从那里下载它们。

有关Heroku开箱即用的更多信息,请参阅此处:https://devcenter.heroku.com/articles/heroku-postgres-documentation#continuous_protection

答案 1 :(得分:2)

如果您有Heroku Postgres的开发或基本计划,则无法选择自动选项。这才是重点。

答案 2 :(得分:1)

这不一定是问题的答案,但这是我对Heroku数据库备份所做的事情,我认为参与此线程的其他人可能会觉得它很有用。

只需选择免费的pgbackups附加组件,并使用本地cron任务每天转储和下载转储。

这是我的cron运行的脚本:

#!/bin/bash
now=$(date +"%y%m%d_%H%M")
fn="/home/username/dumps/backup_$now.dump"
cd /home/username/app && heroku pgbackups:capture --expire
cd /home/username/app && heroku pgbackups:url | xargs wget -O $fn

now变量只是将日期和时间附加到文件名。 fn是文件路径。

第3行:

cd /home/username/app && heroku pgbackups:capture --expire

更改Heroku应用程序目录然后运行Heroku调用pgbackups以创建转储并删除最旧的转储。

第4行:

cd /home/username/app && heroku pgbackups:url | xargs wget -O $fn

获取转储文件的临时URL,并使用wget下载文件并将其重命名为我在第2行中设置的文件路径:fn

这对我来说非常有用,我可以放心,我每天都会备份数据库。我将很快扩展它以删除超过90天的本地备份。

答案 3 :(得分:0)

一周:

 Daily backups retained 7 
 Weekly backups retained 0
 Manual backups retained 2 

一个月:

 Daily backups retained 7 
 Weekly backups retained 5 
 Manual backups retained 2 

加:

 Daily backups retained 0
 Weekly backups retained 0 
 Manual backups retained 7

一个月有超过一周的绝对优势。

但是,plus有7个手动备份,这比任何其他计划都要多。

我可以看到为什么有人会选择加号,但我不明白为什么有人会在一个月内选择一周。

我也是,持怀疑态度,想知道,"这是免费的吗?它是免费的吗?这些数字毫无意义"哈哈

答案 4 :(得分:0)

这是因为他们过去常常为Plus和Auto级别收费。现在他们都是自由的。