Re: pg_basebackup application does not dump all database objects
| От | Stephen Frost |
|---|---|
| Тема | Re: pg_basebackup application does not dump all database objects |
| Дата | |
| Msg-id | ZGOP1Tu5bDBkLIdE@tamriel.snowman.net обсуждение |
| Ответ на | pg_basebackup application does not dump all database objects (PG Doc comments form <noreply@postgresql.org>) |
| Ответы |
Re: pg_basebackup application does not dump all database objects
|
| Список | pgsql-docs |
Greetings,
* PG Doc comments form (noreply@postgresql.org) wrote:
> It would be good to point out on the pg_basebackup documentation that it
> behaves differently from
>
> SELECT * FROM pg_start_backup('label', true, false);
> cp -a xxx yyy
> SELECT * FROM pg_stop_backup(false, true);
... that's not actually a backup. Doing the above, you won't get a
backup_label and unless you take other steps, PG will end up thinking
it's doing crash recovery. That's not good and can lead to corruption.
If you're going to consider taking a low-level backup you should read
the documentation here:
https://www.postgresql.org/docs/15/continuous-archiving.html#BACKUP-LOWLEVEL-BASE-BACKUP
Which specifically goes into the question about replication slots.
> method. One thing discovered was that the latter retains replication slot
> information on the clone while pg_basebackup discards all replication slot
> information. Not sure if it is a feature or a bug (replication slots
> retention is a good thing).
Our documentation points out a number of reasons why it's not, I'd
suggest you read the above.
> And perhaps there are more such subtle differences?
Not sure that there's really that many other differences between
pg_basebackup and a properly implemented low-level backup. You
certainly have to do a lot more than what you have above to have a
properly implemented low-level backup though.
Thanks,
Stephen
Вложения
В списке pgsql-docs по дате отправления: