Re: (13.1) pg_basebackups ./. pg_verifybackup - Mailing list pgsql-general
From | Matthias Apitz |
---|---|
Subject | Re: (13.1) pg_basebackups ./. pg_verifybackup |
Date | |
Msg-id | YRJJMf2RGGNJbHJZ@c720-r368166 Whole thread Raw |
In response to | Re: (13.1) pg_basebackups ./. pg_verifybackup (Matthias Apitz <guru@unixarea.de>) |
Responses |
Re: (13.1) pg_basebackups ./. pg_verifybackup
|
List | pgsql-general |
El día martes, agosto 10, 2021 a las 09:23:34a. m. +0200, Matthias Apitz escribió: > I've studied now the fine docs again and have some additional questions. The > backup was done fine to the directory /data/postgresql133/backup-20210810-1 > which contains now: > > $ ls -l > total 717252 > -rw------- 1 postgres postgres 430331 Aug 10 08:54 backup_manifest > -rw------- 1 postgres postgres 734006592 Aug 10 08:54 base.tar.gz > -rw------- 1 postgres postgres 17667 Aug 10 08:54 pg_wal.tar.gz > > I un-tar'ed the two archives with > > $ tar xzf base.tar.gz > $ tar xzf pg_wal.tar.gz > > And then I run pg_verifybackup it gives the following errors: > > $ pg_verifybackup /data/postgresql133/backup-20210810-1 > pg_verifybackup: error: "0000000100000000000000D9" is present on disk but not in the manifest > pg_verifybackup: error: "pg_wal.tar.gz" is present on disk but not in the manifest > pg_verifybackup: error: "base.tar.gz" is present on disk but not in the manifest > pg_verifybackup: error: "archive_status/0000000100000000000000D9.done" is present on disk but not in the manifest > pg_waldump: fatal: could not find any WAL file > pg_verifybackup: error: WAL parsing failed for timeline 1 > > The two messages about the present of pg_wal.tar.gz and base.tar.gz are > clear. One could move the archives out of the sight of pg_verifybackup. > But the others are unclear to me. The files 0000000100000000000000D9 and > archive_status/0000000100000000000000D9.done are part of pg_wal.tar.gz > written by pg_basebackup: > > tar tvf pg_wal.tar.gz > -rw------- postgres/postgres 16777216 2021-08-10 08:52 0000000100000000000000D9 > -rw------- postgres/postgres 0 2021-08-10 08:54 archive_status/0000000100000000000000D9.done > > About WAL the file backup_manifest contains only: > > "WAL-Ranges": [ > { "Timeline": 1, "Start-LSN": "0/D9000028", "End-LSN": "0/D9000138" } > ], > > What is the problem here or what I've missed? > Thanks I think, I sorted it out by doing this: I moved away the tar-archives: $ cd /data/postgresql133/backup-20210810-1 $ mkdir ../saved $ mv *.tar.gz ../saved I unpacked 'base.tar.gz' the usual way: $ tar xzf ../saved/base.tar.gz but 'pg_wal.tar.gz' in the sub dir 'pg_wal': $ cd pg_wal $ tar xzf ../../saved/pg_wal.tar.gz $ cd .. $ find pg_wal pg_wal pg_wal/0000000100000000000000D9 pg_wal/archive_status pg_wal/archive_status/0000000100000000000000D9.done now pg_verifybackup seems to be happy: $ pg_verifybackup /data/postgresql133/backup-20210810-1 backup successfully verified Is this the supposed way it should work? Esp. this unpacking of 'pg_wal.tar.gz' in a directory level below? Ofc, one could specify the location of the WAL file with '-w path', but the doc only suggests this when "Try to parse WAL files stored in the specified directory, rather than in pg_wal. This may be useful if the backup is stored in a separate location from the WAL archive." But having to unpack 'pg_wal.tar.gz' below pg_wal is not obvious. matthias -- Matthias Apitz, ✉ guru@unixarea.de, http://www.unixarea.de/ +49-176-38902045 Public GnuPG key: http://www.unixarea.de/key.pub 27.7.1900: Kaiser Wilhelm II Deutsches Ostasiatisches Expeditionskorps, target China 02.8.2021: Deutsche Kriegsministerin Kramp-Karrenbauer Fregatte "Bayern", target China
pgsql-general by date: