Skip to content

Instantly share code, notes, and snippets.

@waruboy
Forked from wrburgess/gist:5528649
Last active October 7, 2021 01:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save waruboy/c988c813acd44c7af9e0095c685ebcee to your computer and use it in GitHub Desktop.
Save waruboy/c988c813acd44c7af9e0095c685ebcee to your computer and use it in GitHub Desktop.
Backup Heroku Postgres database and restore to local database

Grab new backup of database

Command: heroku pg:backups:capture --remote production

Response: >>> HEROKU_POSTGRESQL_COLOR_URL (DATABASE_URL) ----backup---> a712

Get list of backups

Command: heroku pg:backups --remote production

Get url of backup download

Command: heroku pg:backups:url [db_key] --remote production

Example: heroku pg:backups:url a712 --remote production

>>> "https://s3.amazonaws.com/hkpgbackups/app11111118@heroku.com/a712.dump?AWSAccessKeyId=XXXXXXXXXXXXXX&Expires=1367876175&Signature=XXXXXXX%EEEEEEEYWWWWWWW%3D"

Download backup dump file

Command: curl "http://[url]" > production.dump

Example: curl "https://s3.amazonaws.com/hkpgbackups/app11111118@heroku.com/a712.dump?AWSAccessKeyId=XXXXXXXXXXXXXX&Expires=1367876175&Signature=XXXXXXX%EEEEEEEYWWWWWWW%3D" > production.dump

Restore backup dump into local db

Command: pg_restore --verbose --clean --no-acl --no-owner -h localhost -d [db_name] production.dump

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment