Re: pg_basebackup on standby node failed

Поиск
Список
Период
Сортировка
От Ying He
Тема Re: pg_basebackup on standby node failed
Дата
Msg-id 1391460683.28876.YahooMailNeo@web164601.mail.gq1.yahoo.com
обсуждение исходный текст
Ответ на Re: pg_basebackup on standby node failed  (Michael Paquier <michael.paquier@gmail.com>)
Ответы Re: pg_basebackup on standby node failed  (Michael Paquier <michael.paquier@gmail.com>)
Список pgsql-general
Thanks Michael. It seems having an issue using pg_basebackup.

When I do:
pg_basebackup -D /backupDir

I am getting:
pg_basebackup: directory "/usr/local/pgsql/data/pg_tblspc/tablespace1" exists but is not empty

tablespace1 is a tablespace created by CREATE TABLESPACE and ""/usr/local/pgsql/data/pg_tblspc/tablespace1" is a symlink pointing to a dir which will always exists and not empty

I tried using -Ft -P, that works to create tar files in the /backupDir but 

pg_basebackup -D /backupDir -Ft -P -X s will fail with:
pg_basebackup: wal streaming can only be used in plain mode

So looks like I cannot really get a standalone backup with xlog files during the backup.

Please advise. Thank you.

best,
Ying



On Friday, January 31, 2014 8:00 PM, Michael Paquier <michael.paquier@gmail.com> wrote:
On Sat, Feb 1, 2014 at 7:07 AM, Ying He <yinghe0101@yahoo.com> wrote:

> hi, All,
>
> I intend to do a basebackup on a hot standby node. I followed  the
> instructions on
> http://www.postgresql.org/docs/9.2/static/app-pgbasebackup.html to turn
> full_page_writes on at master and other settings on standby.
>
> When I try to select pg_start_backup('backuplabel'); on the standby
> instance, it give me the following:
> ERROR:  recovery is in progress
> HINT:  WAL control functions cannot be executed during recovery.
>
> I tried select  pg_xlog_replay_pause(); before the select
> pg_start_backup('backuplabel'); but that does not help.
>
> Also why select pg_is_in_recovery(); always returns true when select
> pg_is_xlog_replay_paused(); is true? I thought when I do select
> pg_xlog_replay_pause(); the standby should not be in recovery
>
> Please help if you know anything about this. Thank you.

Taking a backup with pg_basebackup and with pg_start/stop_backup are
two different things on a standby. In short, you are not allowed to
run pg_start/stop_backup in recovery on a standby because
pg_stop_backup needs to write a WAL record called XLOG_BACKUP_END once
it is done. Only pg_basebackup is able to take backups from a standby
because it uses the replication protocol to take the backup and
bypasses the WAL record by waiting that all the needed WAL files have
been archived.
So use pg_basebackup for a standby :)

Regards,
--
Michael



В списке pgsql-general по дате отправления:

Предыдущее
От: David Johnston
Дата:
Сообщение: Re: way to custom sort column by fixed strings, then by field's content
Следующее
От: Susan Cassidy
Дата:
Сообщение: Re: way to custom sort column by fixed strings, then by field's content