Cloud9 postgres
Ich versuche zum einrichten einer postgres-Datenbank in eine Rails-app in die Cloud9.
Ich folgte den Anweisungen hier: https://docs.c9.io/setting_up_postgresql.html und die Einrichtung einer Datenbank namens cc_database.
Meiner Datenbank.yml-Datei sieht wie folgt aus:
development:
adapter: postgresql
encoding: SQL_ASCII
database: cc_database
pool: 5
username: postgres
password: password
Wenn ich rake db:setup bekomme ich folgende Fehlermeldung:
PG::ConnectionBad: FATAL: Peer authentication failed for user "postgres"
Ich bin ganz neu auf all dies, so dass jede Beratung wäre sehr geschätzt werden.
InformationsquelleAutor der Frage jonny_FIVE | 2014-10-24
Du musst angemeldet sein, um einen Kommentar abzugeben.
Führen Sie die folgenden Schritte:
Erstellen Sie einen neuen Benutzernamen und ein Kennwort für den postgresql auf cloud9:
Erstellen ENV-Variablen auf cloud9:
Meiner Datenbank.yml für rails-4.2.0 auf cloud9:
Gehören die gem
pg
im Gemfile und installieren:Update template1 postgresql-Datenbank.yml auf cloud9:
Aus der Befehlszeile ausführen:
InformationsquelleAutor der Antwort Tony Nguyen
Postgresql in cloud9 ist setup, um die Authentifizierung mit peer, wenn Sie die localhost-Verbindung.
So schnell die Auflösung ändern Sie die Benutzer in Ihrer Datenbank.yaml zum aktuellen Benutzer. In meinem Fall der name des Benutzers ist ubuntu.
Um zu sehen, Ihre aktuellen Benutzer verwenden Sie den Befehl
$ echo $USER
So eine Liste Befehl im terminal ist .
Stellen Sie Ihre yaml-Datei wie folgt
Nun kann man
InformationsquelleAutor der Antwort Carlos Eduardo
Verwenden Sie den Benutzernamen "ubuntu" mit einem leeren Passwort. Meine Datenbank.yml sieht wie folgt aus:
Entwicklung:
adapter: postgresql
Kodierung: unicode
Datenbank: myflix_development
pool: 5
Benutzername: ubuntu
Passwort:
test:
adapter: postgresql
Kodierung: unicode
Datenbank: myflix_test
pool: 5
Benutzername: ubuntu
Passwort:
Wenn es meckert dann das Passwort falsch ist, versuchen Sie, das Kennwort mit Cloud9 instructions:
In der Befehlszeile Folgendes ein:
sudo sudo -u postgres psql
postgres=#
\password
Enter new password:
leave it blank and press enter
Geben Sie es wieder:
leave it blank and press enter
postgres=#
\q
Ich bin ziemlich neu hier. Hoffe, das funktioniert!
InformationsquelleAutor der Antwort user1991035
Wie setup-PostgreSQL & Schienen auf Cloud9
Zum Zeitpunkt des Schreibens, Cloud9 hat PostgreSQL vorinstalliert, so dass Sie nicht brauchen, um es selbst installieren. Jedoch, es ist nicht standardmäßig ausgeführt, so dass Sie brauchen, um es zu starten mit diesem Befehl im terminal:
Ändern Sie die PostgreSQL-Passwort auf "Passwort" (oder wählen Sie ein anderes Kennwort):
Bearbeiten Sie Ihre
config/database.yml
werden:(Hinweis: die
template
username
undpassword
configs in derdefault
Abschnitt sind unbedingt notwendig).Fügen Sie die
pg
Juwel, um IhreGemfile
:Laufen
bundle install
.Entfernen Sie die sqlite-gem von Ihrem
Gemfile
(und Optional löschen derdb/*.sqlite3
- Dateien).Erstellen der Datenbank, laden von schema.rb, und ein Seeding für die Datenbank mithilfe der
db:setup
Aufgabe:Start oder Neustart Ihres rails-app, und überprüfen Sie es funktioniert.
Beachten Sie, dass die non-seed-Daten von Ihrem alten sqlite-Datenbank wird nicht in der neuen Datenbank vorhanden.
Wenn Sie jemals wollen, verwenden Sie den psql-client für die Interaktion mit PostgreSQL direkt im terminal ausführen
psql
oder laufenbin/rails db
.InformationsquelleAutor der Antwort Eliot Sykes
Für mich tun, die Schritte in Cloud9-Arbeitsbereich-setup mit Rails und Postgresql war nicht genug.
Es war vorbei, in mein user, aber nicht das Passwort.
echo $USERNAME
kam mit nichts.Lösung
Dann habe ich dieses:
Dann habe ich diese in mein yaml-Datei (Anmerkung, die ich getötet den host-Teil):
Dann konnte ich meine Datenbank mit:
Und meine Rails-server gestartet ohne weitere Problemchen.
InformationsquelleAutor der Antwort TinkerTenorSoftwareGuy
Die Lösung gefunden. Benötigt zum Bearbeiten der pg_hba.conf-Datei ändern, die Authentifizierung von peer-to-md5-so:
Es ist schwer zu finden die Datei kann nur zugegriffen werden, über das terminal in cloud9. Sie können es nicht finden in der Datei tree.
Wenn Sie geben Sie den folgenden in postgres wird es Ihnen zeigen, die Lage
Können Sie dann finden und Bearbeiten-in vim über das terminal.
InformationsquelleAutor der Antwort jonny_FIVE
Einer kurzen version, wenn Sie rails-app vor der Erstellung von Datenbanken:
fügen Sie die gem 'pg'
entfernen gem sqlite3
Dann,
als pro https://community.c9.io/t/how-do-i-set-up-postgresql-on-c9-for-my-rails-app/2614/4
Ändern Sie die Anwendung für einen beliebigen Namen. Dann, copy-paste unten, ändern Sie die Anwendung für einen beliebigen Namen.
Als über Kommentare, kein Kennwort benötigt, der Benutzername bleiben können ubuntu.
Wenn Sie mit heroku, werden Sie nicht brauchen, die Produktion Abschnitt in der Datenbank.yml
InformationsquelleAutor der Antwort foureyedraven