Re: Dump a database excluding one table DATA? - Mailing list pgsql-general

From Adrian Klaver
Subject Re: Dump a database excluding one table DATA?
Date
Msg-id 201108181304.22882.adrian.klaver@gmail.com
Whole thread Raw
In response to Dump a database excluding one table DATA?  (Dmitry Koterov <dmitry@koterov.ru>)
Responses Re: Dump a database excluding one table DATA?
List pgsql-general
On Thursday, August 18, 2011 12:49:45 pm Dmitry Koterov wrote:
> Hello.
>
> Is there any way (or hack) to dump the whole database, but to exclude the
> DATA from a table within this dump? (DDL of the table should not be
> excluded: after restoring the data the excluded table should look "empty".)
>
> I see -T switch of pg_dump, but seems -T excludes the data AND the DDL of a
> table (and possibly all objects which depend on this table?), so after
> restoration the database structure becomes broken sometimes.

One way I know you can do it, is exclude the data from restoring. This requires
you use the pg_dump custom format. For full details see here:

http://www.postgresql.org/docs/9.0/interactive/app-pgrestore.html

Short version use pg_restore -l to generate a listing from the dump file.
Comment out the line that copys the data into that table.
Use pg_restore ... -L to have pg_restore those items not commented out.

Another way is do it using the -T switch for the 'complete' db dump. Then do a
separate dump using -s (schema only) and -t some_table and then restore it on
its own.

--
Adrian Klaver
adrian.klaver@gmail.com

pgsql-general by date:

Previous
From: John Cheng
Date:
Subject: Re: call initdb as regular user
Next
From: Dmitry Koterov
Date:
Subject: Re: Dump a database excluding one table DATA?