我使用Ruby on Rails 3.2.13。
本地开发环境中的SQLite3。
Heroku的生产环境(PostgreSQL)。
使用上述先决条件将数据库从生产阶段拉到开发阶段的最新(!=已弃用)和最简单的方法是什么?
答案 0 :(得分:5)
你可以用点击宝石
来做到这一点heroku db:pull
在heroku上也有一些关于这个主题的帖子:
https://blog.heroku.com/archives/2009/3/18/push_and_pull_databases_to_and_from_heroku https://devcenter.heroku.com/articles/heroku-postgres-import-export
答案 1 :(得分:0)
您可以使用以下命令从Heroku中提取最新的生产环境:
curl -o latest.dump `heroku pgbackups:url`
从那里你需要将转储从PG转换为SQLite可以读取的内容。其步骤如下:
SET
SELECT pg_catalog.setval
true
‘t’
false
‘f’
BEGIN;
作为第一行,END;
作为最后一行最后,您需要将其导入SQLite。
sqlite3 db/development.sqlite3
sqlite> delete from schema_migrations;
sqlite> .read latest.sql