プログラミング初心者が備忘録のために書いています。
本番環境でrails db:migrate:reset RAILS_ENV=productionをしてもエラーになったので別の方法を調べてみたところ解決できたのでまとめました。
データベースを削除する
データベースを消したいアプリに移動してから
ターミナル
[ec2-user@*******]$ RAILS_ENV=production DISABLE_DATABASE_ENVIRONMENT_CHECK=1 bundle exec rake db:drop
新たにデータベースを作成
上記と同じディレクトリで実行するとうまくいかなかったので、currentに移動してから実行
ターミナル
[ec2-user@******* current]$ rake db:create RAILS_ENV=production
[ec2-user@******* current]$ rake db:migrate RAILS_ENV=production
seedも反映させたい場合
ターミナル
[ec2-user@******* current]$ rake db:seed RAILS_ENV=production
作られているか確認
ターミナル
[ec2-user@*******]$ mysql -u root -p;
## 実行後パスワードを入力
mysql > show databases;
## データベースの確認
mysql > use データベース名;
mysql > show tables;
mysql > select * from テーブル名;
## 中身の確認
まとめ
開発環境でデータベースを書き換えたことでうまくdb:migrateができなかったのですが、上記の方法で一応解決できました。
自分が忘れないように記録しました。