可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
So I'm new to ROR and Heroku and need a little help. I've created an app and have deployed it; however, I'd like to clear out the database associated with it. Meaning I'd like to clear any users (and their attached data) that have been created thus far.
I've basically created several phony accounts to test out whether the database on the production site works, but now i'd like to clear this out, and start with a fresh database.
Is this possible without deleting the database entirely?
Any help would be sincerely appreciated. Thank you very much for your time!
回答1:
You can use heroku pg:reset DATABASE
command to reset the entire database. The command will simply drop and create the database.
You have to use heroku rake db:migrate
to create the tables then.
Alternatively you can use rake db:reset
command locally and then run heroku db:push
to update the production db.
回答2:
heroku pg:reset DATABASE --confirm {app-name}
heroku run rake db:migrate
heroku run rake db:seed
回答3:
Login on Heroku through terminal and then
run one of following commands:
heroku rake db:reset
//or:
heroku run rake db:reset
The first one is an old one and the second is latest.
回答4:
The 2013 way to do this is:
Enter heroku pg:reset DATABASE
in your console and then enter in your app name when prompted. This will drop the entire database -- tables, rows, columns, all of its data, everything.
Then, enter heroku run rake db:migrate
. This will create the same table, rows, and columns, but without any object data.
回答5:
The current way is:
heroku pg:reset DATABASE_URL --confirm <APP_NAME>
回答6:
The current Cedar stack's proper syntax for shared databases is:
heroku pg:reset SHARED_DATABASE my-database-name-1294
(Replace "my-database-name-1294" with whatever is before the .herokuapp.com in your URL)
It'll then ask you this:
----> Resetting SHARED_DATABASE (DATABASE_URL)
! WARNING: Potentially Destructive Action
! This command will affect the app: my-database-name-1294
! To proceed, type "my-database-name-1294" or re-run this command with --confirm my-database-name-1294
Just retype "my-database-name-1294" there and it'll reset everything.
回答7:
To reset your database
run like bellow
heroku pg:reset SHARED_DATABASE --confirm APP_NAME
this works very well for my
回答8:
Yes, you can either use SQL methods to do it or perhaps just use the Rails Console to do it from the command line and call the @users.destroy_all method. This article explains how to use the console from Heroku.
回答9:
If you have two servers - production and staging, and you want to add the database from production to staging
heroku pg:reset DATABASE --remote staging
heroku pgbackups:restore DATABASE URL_OF_DATABASE --remote staging
heroku run rake db:migrate --remote staging
URL_TO_DATABASE - an aws or dropbox url for the dump.
This worked for me!
回答10:
Heroku provides a visual tool to do this.
Go to Resources > Heroku Postgres :: Database
Drop database manualy
If you want to migrate your tables use rake db:migrate
To launch your seeds rake db:seed