Handles pg_dump and pg_restore from a common config file of servers and databases
Or install it yourself as:
- clone this repo
rake build
rake install
db-sync
requires a YAML file if your server configurations and passwords. To get started run the db-sync init
call to create a blank template in ~/.db-sync.yml
. Edit this file and define your apps, as well as their environments and any other configuration you many need.
Given you filled out your config with something like:
# define your apps and environments for syncing and pulling the database
apps:
ecommerce:
production:
# make sure you can SSH to this server `ssh [email protected]` should work
server:
host: myapp.com
user: deploy
db:
host: db.myapp.com
database: ecommerce_production
username: postgres
password: somecrazypasswordinproduction
local:
db:
database: ecommerce_development
username: postgres
You can dump the production database to your Desktop by doing the following:
db-sync dump ecommerce:production > ~/Desktop/production.dump
This will build the necessary pg_dump
commands and issue them over SSH and stream the data back to STDOUT.
Given the above configuration, and your dumpfile is at ~/Desktop/production.dump
you can issue the following command to restore your local DB with the production data:
db-sync restore ecommerce:local < ~/Desktop/production.dump
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request