I'm trying to generate a full backup with pg_rman from a remote server:
Server 192.168.30.237 (pg_rman) to 192.168.30.37 (only PostgreSQL)
The OS is OpenSuse 12.2 with PostgreSQL 9.2 and pg_rman 1.2.5.
When I try to perform the backup:
pg_rman backup -b full -B /sysmo/pg_rman/backup_pg_rman/ -D /sysmo/sysmovs/dados/pgsql/data/ -h 192.168.30.37 -U postgres -d dados --debug
I get the following messages:
LOG: (query) SELECT current_setting($1)
LOG: (param:0) = block_size
LOG: (query) SELECT current_setting($1)
LOG: (param:0) = wal_block_size
INFO: database backup start
LOG: (query) SELECT * from pg_xlogfile_name_offset(pg_start_backup($1, $2))
LOG: (param:0) = 2013-07-10 17:09:31 with pg_rman
LOG: (param:1) = true
LOG: get_lsn():000000010000000A000000AD 32
LOG: (query) SELECT * FROM pg_xlogfile_name_offset(pg_stop_backup())
NOTICE: pg_stop_backup complete, all required WAL segments have been archived
LOG: wait_for_archive() wait for /sysmo/sysmovs/dados/pgsql/data//pg_xlog/archive_status/000000010000000A000000AD.ready
LOG: (query) SELECT txid_current();
LOG: wait_for_archive() .ready deleted in 0 try
ERROR: backup_label does not exist in PGDATA.
Looking at the source http://code.google.com/p/pg-rman/source/browse/trunk/backup.c on line 112 I think it should not work even remotely.
/* If backup_label does not exist in $PGDATA, stop taking backup */
snprintf(path, lengthof(path), "%s/backup_label", pgdata);
make_native_path(path);
if (!fileExists(path)) {
.......
elog(ERROR_SYSTEM, _("backup_label does not exist in PGDATA."));
}
How do I perform a remote backup using pg_rman? Is it possible? What should I change in my settings?