LoginSignup
11
14

More than 5 years have passed since last update.

HerokuのPostgreSQLのデータのエクスポート

Posted at

PG Backupsというアドオンを使うとHeroku上のPostgreSQLからデータをバックアップしたり、エクスポート・インポートしたりできる。

使い方はDev Centerに載っている通り。

ここではデフォルトで提供されるDATABASE_URLなDBに入っているデータをローカルのPostgreSQLに入れる手順をメモっておく。

インストール

$ heroku addons:add pgbackups
----> Adding pgbackups to poison-beta... done, v319 (free)
  You can now use "pgbackups" to backup your databases or import an external backup.

バックアップ

$ heroku pgbackups:capture
SHARED_DATABASE (DATABASE_URL)  ----backup--->  b001

このとき表示されたb001というのがバックアップしたデータのID。

バックアップ一覧

$ heroku pgbackups

ファイルに落とす

$ heroku pgbackups:url b001
"https://s3.amazonaws.com/hkpgbackups/...."

AWS S3上のURLが表示されるので、ここにアクセスするとPostgreSQLからダンプされたファイルをダウンロードできる。10分間だけ有効。

落としてきたデータはps_restoreを使うことでローカルのPostgreSQLにインポートできる。

$ pg_restore --verbose --clean --no-acl --no-owner -h myhost -U myuser -d mydb b001.dump

(ちなみに)バックアップからレストア

$ heroku pgbackups:restore DATABASE b001

(ちなみに)バックアップを削除する

$ heroku pgbackups:destroy b001
11
14
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
14