0.0
Repository is archived
No commit activity in last 3 years
No release in over 3 years
A command line utility for copying postgres databases. Wraps pg_backup and pg_restore in a Ruby wrapper.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.11
~> 10.0
~> 3.0

Runtime

>= 1.7.8, ~> 1.7
>= 3.1.1, ~> 3.1
>= 2.1.0, ~> 2.1
>= 0.19.1, ~> 0.19
 Project Readme

Build Status

PostgresClone

A command line utility for cloning Postgres databases.

Installation

gem install postgres-clone

Usage

After installing the postgres-clone gem, you will have access to the pg-clone command which facilitates copying Postgres databases.

pg-clone will ssh into the remote server, perform a pg_dump, copy the dump to the target server, and then perform a pg_restore.

Options

TODO:

Examples

Remote to Local

# Dump remote database and restore to local Postgres server
pg-clone --src-host=db.example.com --src-db=database --dst-host=localhost

Remote to Remote

# Dump remote database and restore to a different remote Postgres server
pg-clone --src-host=db1.example.com --src-db=database --dst-host=db2.example.com

Local to Local

# Duplicate local Postgres database
pg-clone --src-host=local --src-db=database --dst-host=localhost

Local to Remote

# Dump local database and restore to a remote database server
pg-clone --src-host=local --src-db=database --dst-host=db.example.com

TODOS

  • Test keyless runs
  • Clean up database dumps?
  • Add checks for existing databases
  • Add options for all prompts
  • Check for existing dump on target machines before doing work

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/joshrickard/postgres-clone.

License

The gem is available as open source under the terms of the MIT License.