it-swarm.com.de

Rake db: reset 'Benutzer hat kein CONNECT-Privileg'

Also verwende ich Heroku Postgres in meiner Rails-App, hosten aber meine App nicht auf Heroku selbst. Ich habe die Active Record-Verbindungsdetails von Heroku in meiner database.yml verwendet und es sieht so aus:

development:
adapter: postgresql
encoding: unicode
pool: 5
database: [database]
username: [username]
password: [password]
Host: ec2-54-227-243-78.compute-1.amazonaws.com
port: 5432

Jetzt versuche ich jedoch, db zu rechen: meine App so zu migrieren, dass die Datenbank mit meinen Modellen eingerichtet ist. Das Ausführen dieses Befehls bewirkt nichts, also habe ich rake db:reset ausprobiert und Folgendes erhalten:

Couldn't drop df2cokjfj0k4vu : #<PG::Error: FATAL:  permission denied for database "postgres"                                                                  
DETAIL:  User does not have CONNECT privilege.                                                                                                                 

df2cokjfj0k4vu ist bereits vorhanden
- initialize_schema_migrations_table ()
-> 1,3997s
- assume_migrated_upto_version (20130924040351, ["/ home/action/braindb/db/migrate"])
-> 0,0882 s 

Irgendeine Idee, was ich falsch mache. Ich bin noch ziemlich neu bei Rails, daher vergesse ich manchmal, wie ich meine Postgres-Datenbank richtig einrichten kann, wenn Hosts migriert werden. 

33
Tom Maxwell

Verwenden Sie stattdessen heroku pg:reset DATABASE wie in https://devcenter.heroku.com/articles/rake angegeben.

Sie können keine Datenbanken in Heroku mit rake db:reset löschen, da der Benutzer keine Berechtigungen hat.

57
luigi7up
5
Nick Veys

Ich hatte vor kurzem dieses Problem und löste es durch die folgenden Schritte.

  1. heroku pg --help erhält den Namen von Befehlen zur Verwendung von Postgres

  2. heroku pg:reset DATABASE # setzt die Datenbank zurück

  3. Beantworten Sie die Aufforderung zur Bestätigung 

4
user3162553

Ich hatte das gleiche Problem. Ich habe es durch Laufen behoben:

heroku pg:reset DATABASE

(Hinweis: muss DATABASE wie oben angegeben)

3
rattanak

Bei einer meiner Apps schien das Upgrade auf die erste bezahlte Stufe einer Heroku-Datenbank für mich zu funktionieren: https://devcenter.heroku.com/articles/upgrade-heroku-postgres-with-pgbackups#provision-new- Plan

Grund war, dass 'heroku pg: info' ergab, dass ich mein Zeilenlimit überschritten hatte, wie hier gezeigt: Zeilen: 12392/10000 (Schreibzugriff widerrufen)

0
user1515295

Wie andere hatte auch ich ein ähnliches Problem, aber das Ausführen von pg:reset hat nicht geholfen: da stieß ich auf das user does not have CONNECT privilege-Problem.

1) heroku pg:reset Sie werden aufgefordert, den Projektnamen zur Bestätigung einzugeben.

2) Von Herokus docs führen Sie heroku rake db:schema:load aus. 

0
tfantina