DB を本番環境と同じにする
DB を本番環境と同じにする
以下のようなときに、どう対応しているかまとめました。
DBいろいろいじってもとに戻したい時- 本番環境 (
prod) と同じデータを入れたい時 ridgepoleというgemを使っていて、db:applyできなくなった時
コマンド一覧
データベースを削除
$ bundle exec rails db:drop
データベースを作成
$ bundle exec rails db:create
dump ファイルのコピー
Amazon の S3 からローカルの ./ に rails_app の dumpファイル をコピーする。
$ aws s3 cp s3://xxxx-db-backup/rails_app/rails_app.sql.gz ./
以下のように追加しておくと、ローカル環境でだけ無視したいファイルを登録できます。ローカル環境の .gitignore ファイルのようなもの。
.git/info/exclude
# ./git/info/exclude
rails_app.sql.gz
データの流し込み
ローカルの MySQL に AWS からコピーした dumpファイル を使ってデータを流し込む。
$ mysql -u ${USERNAME} rails_app_development < rails_app.sql
