Open4

本番環境のデータのバックアップを取りたい。

適当適当

個人のアプリをデプロイして数週間が経った。
マイグレーションを大きく変更を加えたいと思った。
意味ないかもだけど本番環境のデータを持ってきて開発環境で動作確認したい。
renderについて調べる。

適当適当

本番環境のバックアップを作成し開発環境でリストアする方法
1:renderのダッシュボードでDB接続情報を確認する。
2:pg_dumpでバックアップを取得する。
3:開発環境でリストアする。

適当適当

開発環境でデータを削除してバックアップを復元した。

◇ ダンプとリストアって何?
マイ辞書ではこうなった。
ダンプはDBの中身を丸ごとファイルに吐き出すイメージ。
リストアはファイルからDBを復元するイメージ。

◇ テーブルを削除してリストア

  • バックアップ作成
    pg_dump DB名 > db.sql
  • DBからテーブルを全部削除
    rails db:drop db:create
  • リストア
    psql DB名 < db.sql

◇ テーブルに変更を加えずにリストア

  • 元に戻す
    rails db:rollback STEP=マイグレートファイル数 db:migrate db:seed
  • DBに変更を加えない
  • リストア
    psql DB名 < db.sql
    ERROR起きた。

◇ 見たもの
https://www.postgresql.jp/docs/9.4/app-pgdump.html
https://www.postgresql.jp/docs/9.4/app-pgrestore.html
https://www.postgresql.jp/docs/9.4/app-psql.html