Thread: pg_dump --clean or dropdb?
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; ...
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