Backing Up a Greenplum Database

posted Sep 12, 2012, 1:43 PM by Sachchida Ojha
There are 3 ways to backup a Greenplum database.

1. Create a dump file for each segment with gp_dump. Use this option if you are dumping a database for backup purposes, or if you want to migrate your data to another system with the same segment configuration (for example, same number of segment instances, but on different hosts). To restore, you must use the corresponding gp_restore utility.  You can also use dump files created by gp_dump to restore to a different Greenplum system configuration if needed.

2. Schedule routine dumps with gpcrondump. This is a wrapper utility for gp_dump. It allows you to schedule routine backups of a Greenplum Database database using cron (a scheduling utility for UNIX operating systems). Cron jobs that call gpcrondump should be scheduled on the Greenplum master host. gpcrondump also allows you to backup additional objects besides your databases and data, such as database roles and server configuration files.

3. Create a single dump file with pg_dump or pg_dumpall. Use this option if you are migrating your data to another database vendor’s system. If restoring to a PostgreSQL or Greenplum database, you can use the corresponding pg_restore utility (if the dump file is in archive format), or you can use a client program such as psql (if the dump file is in plain text format). If you plan to restore to another Greenplum Database system, Greenplum recommends that you do a parallel dump using gp_dump or gpcrondump and then do a non-parallel restore.