Schienen 5 db:reset funktioniert nicht
Möchte ich die Datenbank zurücksetzen meiner rails-5-Projekt, aber die rails db:reset
Befehl nicht funktioniert.
errormessage:
Permission denied @ unlink_internal - C:/sites5/dawnrebirth/db/development.sqlite3
Couldn't drop database 'db/development.sqlite3'
rails aborted!
Errno::EACCES: Permission denied @ unlink_internal - C:/sites5/dawnrebirth/db/development.sqlite3
bin/rails:4:in `require'
bin/rails:4:in `<main>'
Tasks: TOP => db:drop:_unsafe
(See full trace by running task with --trace)
- Die Ausführung von Befehlen
db:drop
,db:create
,db:migrate
einer nach dem anderen beheben das Problem für mich. (Und ausführendb:seed
wenn Sie wollen, füllen Sie einige test-Daten).
Du musst angemeldet sein, um einen Kommentar abzugeben.
In der Regel, wenn
rake db:reset
laufen nicht oder für mich arbeiten, ich löschen Sie einfach die Entwicklung.sqlite3 und schema.rb-Dateien und der erneuten ausführen derrake db:migrate
Befehl, sich zu regenerieren beiden Dateien. Beachten Sie jedoch Niemals versuchen, diese in einer Produktions-Umgebung bitte.versuchen
rails db:drop:_unsafe
siehe https://github.com/rails/rails/issues/31589Sieht aus wie Schienen versucht die Datei zu löschen, aber war nicht erfolgreich.
Überprüfen Sie Folgendes:
rake db:reset
.rake db:reset
sofort nach dem Neustart eine hohe Wahrscheinlichkeit hat, um erfolgreich ausgeführt.Wenn Sie rake db:reset, es läuft db:drop und db:setup in der Reihenfolge.
1.Vielleicht müssen Sie aufhören, Ihre Rails-server und-Konsole.
2.Ein Neustart kann das problem lösen zu.
Mir wurde gesagt, um meinen input für schiene 5 als Antwort, so auf Anfrage ...
Erste, stoppen Sie den rails-server.
Zweite, führen Sie diese 3 Befehle ...
Ich hasse Graben durch Dateien, so ist dies einfacher & schneller für mich als gehen Sie zum löschen einer Datei. Einschränkung: egal, Ob Sie mit meinem fix oder nicht - immer ein backup Ihrer schema irgendwo jeden Tag (wie bei einem repo-system...github/bitbucket).
Ich glaube, 'rake' kann verwendet werden, anstelle von Schienen für die Versionen vor der Schienen 5, aber noch nicht getestet zurück auf rails 3 oder 2.
Als @govind-shaw sagte ... entweder Weg, Sie zu stoppen Sie den rails-server & starten Sie es erneut.