Postgres备份数字海洋

时间:2015-04-04 22:12:36

标签: ruby-on-rails postgresql digital-ocean

我在Digital Ocean上运行了一个Rails应用程序。它是一个地理定位器应用程序,类似于您输入拉链并找到最近的邮局。

我正在尝试将生产数据库复制到我的本地环境,但我有点困惑。我跟着this文章,但仍然坚持。

该应用有一个只有位置的模型。有一些人在实时网站上帮助更新地址和列表名称等,这就是生产数据库正在发生变化的原因。我现在必须对应用程序进行一些更改,并希望数据库匹配,或者至少忽略本地数据库并保留生产中的内容。

所以我的问题是,安排一个与数据库匹配的每周备份,或者只是忽略本地数据库是否合理?如果是这样,最好的方法是什么?我的主要目标是能够对应用程序进行结构更改,但在推送到Digital Ocean时不会覆盖生产数据库。

这是我第一次使用Digital Ocean,习惯了很多Heroku的内置方法,所以请耐心等待一下。如果需要,我很乐意澄清更多。只是寻找最佳实践和行动方案。提前谢谢。

如果有帮助,这是我的database.yml文件。您还可以在http://www.clpapers.com找到实时应用。

development: &default
  adapter: postgresql
  database: clpapers
  encoding: utf8
  host: localhost
  min_messages: warning
  pool: 2
  timeout: 5000

test:
  <<: *default
  database: clpapers

2 个答案:

答案 0 :(得分:1)

您不应该将开发数据库发送到生产环境。生产具有完全不同的数据库环境(在.database.yml中配置)如果您在生产中更新rails应用程序,则不应触摸数据库(postgres不会将其数据存储在您的应用程序中)。

答案 1 :(得分:1)

如果您的目标是在本地创建生产数据库备份,则可以使用pgadmin3从/向生产数据库进行管理,导出/导入等操作。

如果您还没有设置它,我强烈推荐它进行备份,如您所述。在调试部署后的pg问题时,它也非常有用,因为您可以直接查看和查询生产数据库。

http://www.pgadmin.org/