Re: The backup API and general purpose backup software

From: "Peter J(dot) Holzer" <hjp-pgsql(at)hjp(dot)at>
To: pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: The backup API and general purpose backup software
Date: 2020-06-21 15:45:20
Message-ID: 20200621154520.GC21591@hjp.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 2020-06-21 10:32:16 -0500, Ron wrote:
> On 6/21/20 8:28 AM, Peter J. Holzer wrote:
> > To make a full backup with the "new" (non-exclusive) API, a software
> > must do the following
> >
> > 1. open a connection to the database
> >
> > 2. invoke pg_start_backup('label', false, false) in the connection from
> > step 1.
> >
> > 3. copy the contents of the data directory to the backup medium
> >
> > 4. invoke pg_stop_backup(false, true) in the connection from step 1.
> >
> > 5. copy the result from the previous step to the backup medium.
>
> I don't understand that last step "5. copy the result from the previous step
> to the backup medium."  It seems to be a duplication of "3. copy the
> contents of the data directory to the backup medium".

Step three copies all the files from the data directory. However, there
is an additional piece of information you you need to recover the
database, and that is only returned by the call to pg_stop_backup:

postgres=# select * from pg_stop_backup(false, true);
╔═[ RECORD 1 ]═════════════════════════════════════════════════════════════════╗
║ lsn │ A9/2F000130 ║
║ labelfile │ START WAL LOCATION: A9/2F000028 (file 00000001000000A90000002F)↵║
║ │ CHECKPOINT LOCATION: A9/2F000060 ↵║
║ │ BACKUP METHOD: streamed ↵║
║ │ BACKUP FROM: master ↵║
║ │ START TIME: 2020-06-21 17:36:30 CEST ↵║
║ │ LABEL: backup # 1234 ↵║
║ │ START TIMELINE: 1 ↵║
║ │ ║
║ spcmapfile │ 17522 /home/postgres ↵║
║ │ ║
╚════════════╧═════════════════════════════════════════════════════════════════╝

Without this information the backup is useless, so it must be backed
up, too. Obviously you can do that only after you got it.

hp

--
_ | Peter J. Holzer | Story must make more sense than reality.
|_|_) | |
| | | hjp(at)hjp(dot)at | -- Charles Stross, "Creative writing
__/ | http://www.hjp.at/ | challenge!"

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Adrian Klaver 2020-06-21 16:05:25 Re: Unable to init and run postgresql-12 on centos 8.2.2004
Previous Message Ron 2020-06-21 15:32:16 Re: The backup API and general purpose backup software