382 Stimmen

So leeren Sie eine Heroku-Datenbank

Ich arbeite an einer Ruby on Rails 3 Webapp auf Heroku. Wie kann ich die Datenbank leeren?

727voto

Shaun Punkte 4739

Um die Datenbank zu löschen, wenn Sie die SHARED_DATABASE_URL :

$ heroku pg:reset DATABASE_URL

Nun zu wiederherstellen. die Datenbank mit nichts drin:

$ heroku run rake db:migrate  

An bevölkern. die Datenbank mit Ihren Saatgutdaten:

$ heroku run rake db:seed

---OR---

Sie können die letzten beiden ( wandern & säen ) zu einer Aktion zusammenfassen, indem Sie dies ausführen:

$ heroku run rake db:setup

bearbeiten 2014-04-18: rake db:setup funktioniert nicht mit Rails 4, es schlägt mit einer Couldn't create database error .

bearbeiten 2014-10-09: Sie können verwenden rake db:setup mit Rails 4. Es gibt Ihnen eine Couldn't create database Fehler (weil die Datenbank bereits mit der Option heroku pg:reset Befehl). Aber es lädt auch Ihr Datenbankschema und Ihre Seeds nach der Fehlermeldung.

Sie können dies mit so gut wie jedem Rake-Befehl tun, aber es gibt Ausnahmen. Zum Beispiel, db:reset funktioniert nicht über heroku run rake . Sie müssen Folgendes verwenden pg:reset stattdessen.

Weitere Informationen finden Sie in der Dokumentation von Heroku:

Rake-Befehle ausführen

Postgres-DB zurücksetzen

103voto

Dave Sag Punkte 12760

Heroku hat die Option --db Option, also jetzt verwenden:

heroku pg:reset DATABASE_URL --confirm {the name of your app}

Es ist ein wenig verwirrend, weil Sie den wörtlichen Text verwenden SHARED_DATABASE sondern wo ich geschrieben habe {the name of your app} ersetzen Sie den Namen Ihrer Anwendung. Wenn Ihre App zum Beispiel my_great_app heißt, verwenden Sie:

heroku pg:reset DATABASE_URL --confirm my_great_app

72voto

George Yacoub Punkte 1381

Um die Datenbank zu löschen:

$ heroku pg:reset SHARED_DATABASE --confirm NAME_OF_THE_APP

Um die Datenbank neu zu erstellen:

$ heroku run rake db:migrate

Um die Datenbank zu füllen:

$ heroku run rake db:seed

**Endgültiger Schritt

$ heroku restart

49voto

superluminary Punkte 42702

Die derzeitige, d.h. 2017 übliche Vorgehensweise ist:

heroku pg:reset DATABASE

https://devcenter.heroku.com/articles/heroku-postgresql#pg-reset

14voto

Jetzt lautet der Befehl

heroku pg:reset DATABASE_URL --confirm your_app_name

Auf diese Weise können Sie angeben, welche App-DB Sie zurücksetzen möchten. Dann können Sie

heroku run rake db:migrate 
heroku run rake db:seed 

oder direkt für beide oben genannten Befehle

heroku run rake db:setup 

Und nun der letzte Schritt zum Neustart Ihrer Anwendung

heroku restart

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X