Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Setup and maintain your staging environments from your production backups!

branch: master
README.rst

pg_staging

Setup and maintain your staging environments from your production backups!

Introduction

pg_staging implements commands for playing with your PostgreSQL_ <http://www.postgresql.org/docs/current/interactive/backup.html> backups, allowing you to expose in devel or prelive environments more than one copy of a live database at the same time.

This document is formatted in a github_ <http://github.com/dimitri/pg_staging> supported format, unfortunately asciidoc is not one of them. So all documents are in asciidoc format except for this README.

backing up, restoring

pg_staging is all about leaveraging your backups procedures, and propose commands allowing to restore those into environments developpers are using to validate their code.

switching between multiple copies

Thanks to pgbouncer you can setup things so that psql -h devel mydb will connect to whatever you restored last, which is called mydb_YYYYMMDD, after the date the backup was taken. pg_staging supports switching

Usage

Please refer to the manual for details.

You have 3 ways to use the pg_staging commands:

  • interactive console

    pg_staging.py

  • command line interface

    pg_staging.py command arg1 arg2

  • scripting

    (echo 'arg1'; echo 'arg2') | pg_staging

All those interfaces expose the exact same set of commands, use the one best fitting your usage environment.

Please note that the scripting .pgs support is pretty limited currently, it lets you get and set configuration and run the usual commands.

Setup

The setup is to be handled in .ini files, where you describe your target environment in terms of the production one. Basically you tell pg_staging where to find your backups and restore them.

Something went wrong with that request. Please try again.