Sha*_*aun 680
要删除数据库,如果您正在使用SHARED_DATABASE_URL
:
$ heroku pg:reset DATABASE_URL
Run Code Online (Sandbox Code Playgroud)
现在重新创建数据库,其中没有任何内容:
$ heroku run rake db:migrate
Run Code Online (Sandbox Code Playgroud)
要填充你的种子数据的数据库:
$ heroku run rake db:seed
Run Code Online (Sandbox Code Playgroud)
- -要么 - -
您可以通过执行以下操作将最后两个(migrate和seed)合并为一个操作:
$ heroku run rake db:setup
Run Code Online (Sandbox Code Playgroud)
编辑 2014-04-18:rake db:setup
无法使用Rails 4,它失败了Couldn't create database error
.
编辑 2014-10-09:您可以使用rake db:setup
Rails 4.它确实会给您一个Couldn't create database
错误(因为数据库已经使用该heroku pg:reset
命令创建).但它也会在错误消息后加载您的数据库架构和种子.
您可以使用几乎任何rake命令执行此操作,但也有例外.例如,db:reset
不起作用heroku run rake
.你必须pg:reset
改用.
更多信息可以在Heroku的文档中找到:
Dav*_*Sag 97
Heroku --db
现在已弃用该选项,因此现在使用:
heroku pg:reset DATABASE_URL --confirm {the name of your app}
Run Code Online (Sandbox Code Playgroud)
这有点令人困惑,因为您使用文字文本,SHARED_DATABASE
但我写的地方{the name of your app}
替换了您的应用程序的名称.例如,如果您的应用程序名为my_great_app,那么您使用:
heroku pg:reset DATABASE_URL --confirm my_great_app
Run Code Online (Sandbox Code Playgroud)
Geo*_*oub 64
要删除数据库:
$ heroku pg:reset SHARED_DATABASE --confirm NAME_OF_THE_APP
Run Code Online (Sandbox Code Playgroud)
要重新创建数据库:
$ heroku run rake db:migrate
Run Code Online (Sandbox Code Playgroud)
种子数据库:
$ heroku run rake db:seed
Run Code Online (Sandbox Code Playgroud)
**最后一步
$ heroku restart
Run Code Online (Sandbox Code Playgroud)
sup*_*ary 42
目前,即.2017年的方法是:
heroku pg:reset DATABASE
Run Code Online (Sandbox Code Playgroud)
https://devcenter.heroku.com/articles/heroku-postgresql#pg-reset
小智 13
现在命令是
heroku pg:reset DATABASE_URL --confirm your_app_name
Run Code Online (Sandbox Code Playgroud)
这样您就可以指定要重置的应用程序数据库.然后你就可以跑了
heroku run rake db:migrate
heroku run rake db:seed
Run Code Online (Sandbox Code Playgroud)
或直接用于上述两个命令
heroku run rake db:setup
Run Code Online (Sandbox Code Playgroud)
现在重启你的应用程序的最后一步
heroku restart
Run Code Online (Sandbox Code Playgroud)
sup*_*ves 11
我联系了Heroku支持,他们确认这是最新宝石的一个错误(我正在使用heroku-2.26.2)
查理 - 我们知道'heroku'宝石的这个问题并正在努力修复它.
如果你想跟进,这就是问题 - https://github.com/heroku/heroku/issues/356
降级到'heroku'宝石的早期版本应该会有所帮助.我今天大部分时间都在使用v2.25.0而没有问题.
使用以下命令降级:
gem uninstall heroku
gem install heroku --version 2.25.0
Run Code Online (Sandbox Code Playgroud)
如果您已经安装了多个gem,则可能会显示以下内容:
Run Code Online (Sandbox Code Playgroud)Select gem to uninstall: 1. heroku-2.25.0 2. heroku-2.26.2 3. All versions
只需卸载#2并重新运行该命令即可.喜悦!
在完整的答案是(与多分贝用户):
heroku pg:info - 输出
=== HEROKU_POSTGRESQL_RED < - 这是 可用的DB
计划基本
状态
heroku pg:reset HEROKU_POSTGRESQL_RED - 确认app_name
更多信息,请访问:https://devcenter.heroku.com/articles/heroku-postgresql
今天的命令
heroku pg:reset --db SHARED_DATABASE_URL
Run Code Online (Sandbox Code Playgroud)
不适用于共享计划,我决心使用
heroku pg:reset SHARED_DATABASE
Run Code Online (Sandbox Code Playgroud)
使用登录到您的数据库
heroku pg:psql
并键入以下命令:
drop schema public cascade;
create schema public;
Run Code Online (Sandbox Code Playgroud)
检查你的heroku版本.我刚刚将我的更新到2.29.0,如下:
heroku --version
#=> heroku-gem/2.29.0 (x86_64-linux) ruby/1.9.3
Run Code Online (Sandbox Code Playgroud)
现在你可以运行:
heroku pg:reset DATABASE --confirm YOUR_APP_NAME
Run Code Online (Sandbox Code Playgroud)
然后创建数据库并在单个命令中播种:
heroku run rake db:setup
Run Code Online (Sandbox Code Playgroud)
现在重启并试用你的应用:
heroku restart
heroku open
Run Code Online (Sandbox Code Playgroud)
如果您更喜欢使用 Heroku 网站:
归档时间: |
|
查看次数: |
134039 次 |
最近记录: |