Обсуждение: pg_dump --clean or dropdb?

Поиск
Список
Период
Сортировка

pg_dump --clean or dropdb?

От
Ray Stell
Дата:
I have two versions of a db that I'd like to sync from a point-in-time
backup.  One set of data is perfered over the other so the db on the
target system will need to be tossed.

Will pg_dump --clean fix up the target or do I need to dropdb instead?
The favored data is in under 8.2.1 and the target system is 8.2.6.

The doc for pg_dump --clean says it will drop db objects, not the db,
however it looks like it does, though the output order of events is
troubling.  Is there a loop in the create/drop area?.

pgdump.test.dmp came from pg_dump -Fc :

$ strings pgdump.test.dmp
PGDMP
ghiza
8.2.1
8.2.1
ENCODING
ENCODING
SET client_encoding = 'UTF8';
false
STDSTRINGS
STDSTRINGS
SET standard_conforming_strings = 'off';
false
1262
16384
ghiza
DATABASE
CREATE DATABASE ghiza WITH TEMPLATE = template0 ENCODING = 'UTF8';
DROP DATABASE ghiza;
...


Re: pg_dump --clean or dropdb?

От
Tom Lane
Дата:
Ray Stell <stellr@cns.vt.edu> writes:
> The doc for pg_dump --clean says it will drop db objects, not the db,
> however it looks like it does, though the output order of events is
> troubling.  Is there a loop in the create/drop area?.

"strings" is not the way to find out what will be emitted by pg_restore.
(Hint: there are commands in the dump archive that may or may not be
used by pg_restore.)  Use a plain pg_dump command, or equivalently look
at pg_restore's output script.

            regards, tom lane