Re: pg_dump -n schema -Fc has a DROP DATABASE command... confused - Mailing list pgsql-admin

From David G. Johnston
Subject Re: pg_dump -n schema -Fc has a DROP DATABASE command... confused
Date
Msg-id CAKFQuwbbFPdYKdirZW8Dq+5GCrYdJySwFQm9KGXke3aKbT=CkA@mail.gmail.com
Whole thread Raw
In response to pg_dump -n schema -Fc has a DROP DATABASE command... confused  (Wells Oliver <wells.oliver@gmail.com>)
List pgsql-admin
On Thu, Jan 20, 2022 at 9:45 PM Wells Oliver <wells.oliver@gmail.com> wrote:
pg_dump -h host dbname -n schema -Fc > schema.dump

Opening it in VIM brings up a binary file (compressed, sure) but it looks like this:

Which contains the line "DROP DATABASE". Which is weird-- it does not drop the database, I mean, I restored from the same file. Why is this in there?

Doing a text dump w/o -Fc yields a text file with no DROP statement.
 
The whole point of the custom format - which indeed defaults to compressed mode (read the docs) - is to move any decisions about what to do during restoring to the pg_restore commands.  So, if the restore wants to drop the database it has a drop database command available which it can execute.  If it doesn't that command will simply be skipped.

-Fp is a plain text format meant to be run via psql (or any other program that can execute a basic SQL script - again, see the docs).  Such a program is not expected to specify restore conditions so whatever was defined during the pg_dump will simply take effect.

David J.

pgsql-admin by date:

Previous
From: Wells Oliver
Date:
Subject: pg_dump -n schema -Fc has a DROP DATABASE command... confused
Next
From: Tom Lane
Date:
Subject: Re: pg_dump -n schema -Fc has a DROP DATABASE command... confused