heroku: dbのbackupからMACへのリストアまで
Date:2016-12-24 13:40:43 +0900
Categories: ETC
Categories: ETC
概要
heroku pg を利用しているのでそのbackupをとって、ローカルのマックにリストアするところまで。
heroku コマンドで確認できます。
バックアップの確認
下記のコマンドで今アプリで使用しているデータベースのバックアップ一覧が確認できます。
$ heroku pg:backups -a APP_NAME === Backups ID Created at Status Size Database ──── ───────────────────────── ─────────────────────────────────── ─────── ──────── b001 2016-12-24 04:08:31 +0000 Completed 2016-12-24 04:08:34 +0000 10.77kB DATABASE === Restores No restores found. Use heroku pg:backups:restore to restore a backup === Copies No copies found. Use heroku pg:copy to copy a database to another バックアップの作成 バックアップを作成するコマンド heroku pg:backups capture -a APP_NAME Starting backup of postgresql-tapered-96268... done Use Ctrl-C at any time to stop monitoring progress; the backup will continue running. Use heroku pg:backups:info to check progress. Stop a running backup with heroku pg:backups:cancel. Backing up DATABASE to b002... done もう一度確認すると増えているのがわかるかと思います $ heroku pg:backups -a APP_NAME === Backups ID Created at Status Size Database ──── ───────────────────────── ─────────────────────────────────── ─────── ──────── b002 2016-12-24 04:35:24 +0000 Completed 2016-12-24 04:35:25 +0000 10.77kB DATABASE b001 2016-12-24 04:08:31 +0000 Completed 2016-12-24 04:08:34 +0000 10.77kB DATABASE === Restores No restores found. Use heroku pg:backups:restore to restore a backup === Copies No copies found. Use heroku pg:copy to copy a database to another ローカルにリストアする バックアップをローカルにダウンロードする $ curl -o DUMPNAME `heroku pg:backups public-url -a APP_NAME` portgresqlにリストアする 取得したダンプファイルを読み込みます。 $ pg_restore --verbose --clean --no-acl --no-owner -h localhost -d DATABASE_NAME DUMPNAME 以上でできた。herokuお手軽です。Tweet