k01ken’s b10g

He110 W0r1d!

WindowsにてRails 5でdb:migrate:resetをしたらエラーになったときの解決法

開発環境はWindows7 Professional(32bit) + Ruby 2.3.3p222 (2016-11-21 revision 56859) [i386-mingw32]+ Rails 5.1.6。

rails db:migrate:reset

と入力すると、

Permission denied @ unlink_internal - c:/hr/db/development.sqlite3
Couldn't drop database 'db/development.sqlite3'
rails aborted!
Errno::EACCES: Permission denied @ unlink_internal - c:/hr/db/development.sqlite3

というエラーが出現した。調べてみると、どうやら、Windowsだと、コマンドで削除ができないみたいなので、以下の手順で解決してみた。

1.サーバーを起動していたら、サーバーをシャットダウンする
2.手動で、db/development.sqlite3を削除する
3.以下のコマンドを入力する

rails db:create db:migrate


参考リンク
Ruby on Rails - db:migrate:reset でエラーが出ます(67393)|teratail