我正在Heroku上开发Ruby on Rails 3 web应用程序。如何清空数据库?
当前回答
完整的答案是(对于有多个db的用户):
Heroku pg:info -输出
=== HEROKU_POSTGRESQL_RED <——这是DB 计划基本 可用状态
heroku pg:reset HEROKU_POSTGRESQL_RED——确认app_name
更多信息请访问:https://devcenter.heroku.com/articles/heroku-postgresql
其他回答
检查你的heroku版本。我刚刚把我的更新到2.29.0,如下:
heroku --version
#=> heroku-gem/2.29.0 (x86_64-linux) ruby/1.9.3
现在你可以运行:
heroku pg:reset DATABASE --confirm YOUR_APP_NAME
然后创建你的数据库,并在一个命令中播种:
heroku run rake db:setup
现在重新启动并尝试应用程序:
heroku restart
heroku open
我总是用一行程序“heroku pg:reset DATABASE”来做这件事。
要删除数据库,如果你使用SHARED_DATABASE_URL:
$ heroku pg:reset DATABASE_URL
现在重新创建一个没有任何内容的数据库:
$ heroku run rake db:migrate
用种子数据填充数据库:
$ heroku run rake db:seed
——或
你可以通过执行以下命令将最后两个(migrate & seed)合并为一个动作:
$ heroku run rake db:setup
编辑2014-04-18:rake db:setup不能与Rails 4一起工作,它失败了,提示不能创建数据库错误。
编辑2014-10-09:你可以在Rails 4中使用rake db:setup。它会给你一个cannot 't create database错误(因为数据库已经使用heroku pg:reset命令创建了)。但是它也会在错误消息之后加载数据库模式和种子。
您可以使用几乎任何rake命令来实现这一点,但也有例外。例如,db:reset不能通过heroku运行rake工作。你必须使用pg:reset来代替。
更多信息可以在Heroku的文档中找到:
运行Rake命令
重置Postgres DB
如果你从控制台登录,这将在最新的heroku工具带中完成工作,
Heroku pg:reset——确认数据库名
水流。2017年的做法是:
heroku pg:reset DATABASE
https://devcenter.heroku.com/articles/heroku-postgresql#pg-reset
推荐文章
- 是否可以在MiniTest中运行单个测试?
- ActiveRecord OR查询
- 如何隐藏数据库,我不允许访问
- 验证多个列的唯一性
- 理解:Rails的has_one/has_many的源选项
- 最好的打印散列的方法
- Rails:如何在Rails 4中引用CSS中的图像
- 使用pgadmin连接到heroku数据库
- 错误:无法使用rebase进行拉取:您有未分阶段的更改
- 在ROR迁移期间,将列类型从Date更改为DateTime
- ActiveRecord:大小vs计数
- 使用rvmrc或ruby版本文件设置RVM项目gemset ?
- 如何在控制器中使用Helper
- 如何用另一个键替换哈希键
- 添加一个CSS类<%= f.submit %>