pg:pull
pg:pull
can be used to pull remote data from a Heroku Postgres database to a database on your local machine. The command looks like this:$ heroku pg:pull HEROKU_POSTGRESQL_MAGENTA mylocaldb --app sushi
This command will create a new local database named “mylocaldb” and then pull data from database at
DATABASE_URL
from the app “sushi”. In order to prevent accidental data overwrites and loss, the local database must not exist. You will be prompted to drop an already existing local database before proceeding.
If providing a Postgres user or password for your local DB is necessary, use the appropriate environment variables like this:
$ PGUSER=postgres PGPASSWORD=password heroku pg:pull HEROKU_POSTGRESQL_MAGENTA mylocaldb --app sushi
Note: like all
pg:*
commands you can use the shorthand identifiers here, so to pull data from HEROKU_POSTGRESQL_RED
on the app “sushi” you could do heroku pg:pull sushi::RED mylocaldb
.pg:push
Like pull but in reverse,
pg:push
will push data from a local database into a remote Heroku Postgres database. The command looks like this:$ heroku pg:push mylocaldb HEROKU_POSTGRESQL_MAGENTA --app sushi
This command will take the local database “mylocaldb” and push it to the database at
DATABASE_URL
on the app “sushi”. In order to prevent accidental data overwrites and loss, the remote database must be empty. You will be prompted to pg:reset
an already a remote database that is not empty.
Usage of the PGUSER and PGPASSWORD for your local database is also supported for pg:push, just like for the pg:pull commands.
No comments:
Post a Comment