connecting...
Google translation for articles :
1 NEMBER donated to you!!

【プログラミング】ActiveRecord::IrreversibleMigration が出たときの対処法【heroku】

nem0.85xem (1) 290 0 0

nemlog検索サイト(https://searchnemlog.herokuapp.com/)作成の時herokuデプロイで詰まってしまったので解決方法をメモしときます。

 

○ActiveRecord::IrreversibleMigration

大体サイトの形ができたからherokuにあげようと思い以前書いた記事(https://nemlog.nem.social/blog/34183)を参考に実行すると、

ActiveRecord::IrreversibleMigrationというエラーが出ました。

 

おそらく今回のアプリはスクレイピングを通してデータベースに保存していたので前回のアプリとはかなり勝手が違ったのだと思います。

 

色々検索しまくって辿り着いたのが「[Rails5] heroku db:resetからmigrateまで」です。

 

以下からは手順を記したいと思います。

 

○ロールバック

$ heroku run rake db:migrate:reset

恐らくエラー文が表示されると思います。

そこに

DISABLE_DATABASE_ENVIRONMENT_CHECK=1

と書かれていたらそれを利用してDB生成が可能になります。

 

○ドロップ

$ heroku run RAILS_ENV=production DISABLE_DATABASE_ENVIRONMENT_CHECK=1 bundle exec rake db:drop

先ほどのエラー文を利用してドロップするとなんとかドロップしてくれます。

 

○DB生成

あとはdb:createを実行。

$ heroku run rails db:create

 

○マイグレーション

最後はいつも通りheroku runをしましょう。

$ heroku run rake db:migrate

 

 

この手順でいけばなんとかアプリが立ち上がると思います。

 

 

○まとめ

データベース系のエラーにハマるとデリケートなイメージなのでめちゃくちゃビビり倒してしまいます。

herokuエラーは前回大概ハマったと思っていましたがまだまだ見知らぬエラーがたくさんである意味奥が深いですね。

 

とりあえず誰かの参考になればと思います。

 

 

 

Why don't you get crypt currency 'nem' by posting your blog article?

nemlog is blog posting service which has donation feature by crypt currency nem.
nemlog was launched to create environment which can be donated nem among NEMbers via blog articles.
Let's get nem by posting good blogs.

Nem prize event is being held frequently, Please join us on this opportunity!

nemlog registration from here
Register

NEMber who posted this article

趣味は読書(特に太宰治)、アニメ鑑賞(特に幾原作品)、旅行。
エンジニア見習い。

日々の色々を共有しながらnemのことについても学びたいと思います。
35139
0

Why don't you read following articles?