Datenbank wird nicht im Projekt rails ausgewählt, wenn versucht wird, db zu migrieren: migrate

8

Arbeiten mit einer Rails-App, mit einigen seltsamen Datenbank- / Rake-Problemen.

Wenn ich folgendes ausführe:

%Vor%

Ich erhalte den folgenden Fehler:

%Vor%

Die Spur zeigt nicht viele nützliche Informationen an. Kann hier gesehen werden: Ссылка

Die Konfigurationsdatei sieht richtig aus, und der Benutzer wird eingeloggt, oder ich hätte eine Art Zugriffsfehler bekommen. Die Datenbank existiert, der Benutzer hat die richtige Berechtigung und ich kann manuell darauf zugreifen und sie manipulieren. Ich habe viel gegoogelt und nichts hilfreiches gefunden. Ich bin mir nicht sicher, ob es irgendeinen anderen Code gibt, der benötigt wird, weil dies ein ziemlich niedriges Problem ist.

    
re5et 06.02.2011, 08:11
quelle

8 Antworten

12

nach allem, dass es ein Abstandsproblem im yaml war.

    
re5et 06.02.2011 08:25
quelle
9

Beachten Sie, dass ruby ​​seinen YAML-Parser in einer aktuellen 1.9.2-Version ausgetauscht hat.

Dies könnte ebenfalls zu diesem Problem führen.

Um zu dem alten YAML-Parser syck zurückzukehren, verwenden Sie dies in boot.rb :

%Vor%     
crispy 24.06.2011 16:24
quelle
2

Ich hatte das gleiche Problem mit Ruby 1.9.2-p180, aktualisiert auf p290 und es funktioniert

    
Jakob Cosoroaba 21.09.2011 14:54
quelle
1

Starten Sie den Server einfach neu. in der Befehlszeile:

  1. Drücken Sie Strg + C

  2. ausführen:

    %Vor%
Yaniv Alterman 03.02.2015 14:16
quelle
1

Nun, es ist ein häufiges Problem für uns Anfänger. Dieses Problem kommt von dem Moment an, wenn Sie Ihr neues Projekt in Schienen erstellen. Lassen Sie uns ein Beispiel geben

%Vor%
  • Nachdem Sie das Paket erstellt und Ihren Server gestartet haben, wird höchstwahrscheinlich ein Fehler auftreten. Um es zu korrigieren, müssen Sie zu Ihrem database.yml gehen und folgendes ändern:

Fügen Sie wie unten gezeigt ein Passwort in das Passwortfeld ein. Dies ist das Passwort, mit dem Sie mysql sichern.

%Vor%

Beantworten Sie auch die Datenbank, indem Sie vor dem Namen ein Hash-Tag (#) einfügen, wie unten gezeigt.

%Vor%
  • Starten Sie dann die Befehlszeile neu und gehen Sie zum Stammverzeichnis Ihrer Anwendung und geben Sie Folgendes ein:
%Vor%

Sie müssen die Willkommensseite von Ruby on Rails sehen.

  • Danach müssen Sie eine Datenbank erstellen.

Erstellen Sie eine Datenbank.

Die Fehlermeldung besagt, dass nicht DATABASE ausgewählt ist. Weil ich keinen erstellt habe. Wenn Sie mit MySQL arbeiten, müssen Sie eines erstellen:

  • Gehe zum Stamm meiner Anwendung und tippe:
%Vor%

Hinweis: Dieses Beispiel funktioniert mit einem Projekt namens toy und der Benutzer, dem ich Privilegien gewähren wollte, ist mark und das Passwort werde ich Geben Sie 45mark . Unten sehen Sie, wo ich diese Elemente anwende. Denken Sie daran, Ihre eigenen Elemente auf jeden Teil der Anweisung anzuwenden.

Erstellen und Benutzer für dieses Projekt

  • Sobald Sie in sind, werden Sie den Zeiger ( mysql & gt; ) sehen, geben Sie danach ein:
%Vor%
  • Geben Sie dann Folgendes ein:
%Vor%
  • Überprüfen Sie, ob es funktioniert, indem Sie Folgendes eingeben:
%Vor%
  • Öffnen Sie die Datei database.yml und konfigurieren Sie, was benötigt wird, und beheben Sie sie wie erforderlich. In meinem Fall werde ich den Benutzernamen zu markieren und das Passwort zu 45mark
%Vor%


- Entfernen Sie außerdem REMOVE das Hash-Tag (#), das vor

hinzugefügt wurde %Vor%

Speichern Sie es.

  • Gehen Sie zum Stamm der Anwendung und geben Sie
  • ein
%Vor%

Fertig !!

Ich hoffe, das hilft. Glückliche Kodierung !!

Danke

    
Tiger 30.06.2016 13:45
quelle
0

Ich hatte einen ähnlichen Fehler, als ich rake db:schema:dump eintippte, und es stellte sich heraus, dass ich nur alle Datenbanken in meiner Yaml-Datei auskommentieren musste, außer meinem development one.

    
xoshi827 09.07.2014 23:18
quelle
0

Versuchen Sie es.

%Vor%

Installieren Sie dies, um zu sehen, ob Sie tatsächlich eine Tabelle erstellt haben oder nicht. Öffnen Sie den Ordner " development.sqlite3 " im Ordner "db"

Ссылка

    
pranav prashant 03.02.2015 15:01
quelle
0

Es ist ein einfacher Fehler, die gesamte database.yml Datei auschecken und sehen, dass wo Standardbeschreibung angegeben ist Datenbankname gegeben ist oder nicht, wenn nicht, dann schauen Sie unter es wird ein anderer Entwicklungsname auch angegeben, wo die Konfiguration der Datenbank verwendet wird Geben Sie Ihren Datenbanknamen darin ein

%Vor%     
Luder 16.04.2016 14:42
quelle