Re: [SQL] Truncate on pg_dump / pg_restore

2008-10-25 Thread chris smith
On Sat, Oct 25, 2008 at 5:32 PM, Bryce Nesbitt <[EMAIL PROTECTED]> wrote:
> Dear Postgres Gurus;
>
> Is there a way to truncate a table, at pg_dump time?
>
> I'm aware of various ways to exclude a table from a dump (>= 8.2), or to
> selectively pg_restore.  What I'm seeking here is different.  I've got
> tables with pretty disposable data... meaning I want to drop the data...
> but restore empty indexed tables at pg_restore time.

Do a schema-only dump.

pg_dump --help says use '-s' or '--schema-only'.

-- 
Postgresql & php tutorials
http://www.designmagick.com/

-- 
Sent via pgsql-sql mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-sql


Re: [SQL] Truncate on pg_dump / pg_restore

2008-10-25 Thread Bryce Nesbitt






chris smith wrote:

  On Sat, Oct 25, 2008 at 5:32 PM, Bryce Nesbitt <[EMAIL PROTECTED]> wrote:
  
  
I've got
tables with pretty disposable data... meaning I want to drop the data...
but restore empty indexed tables at pg_restore time.

  
  
Do a schema-only dump.
pg_dump --help says use '-s' or '--schema-only'.
  

Ooops, I was unclear.  I want most of the data!  There are just a few
tables that I'd prefer be empty (truncated) in the restored database. 
Most of the tables (and there are lots) are valuable.

Could I  dump --schema-only, dump full, dump the toc, comment out the
tables from the toc, restore the --schema-only, then restore the dump
(minus the contents of the unwanted tables)?





Re: [SQL] Truncate on pg_dump / pg_restore

2008-10-25 Thread Harold A. Giménez Ch.
You can, assuming you start off with a pg_dump in custom format (use -Fc).
You can use pg_restore's -l option to drop out the list contents of the
archive, and then comment out whatever you do not want restored:


pg_dump -Fc ... > your_db.dump

pg_restore -l your_db.dump > your_db.list

# edit your_db.list and comment out whatever you don't need (or reorder if
needed)

# use your_db.list for the actual restore:

pg_restore -L your_db.list your_db.dump
**

Look at the examples on:

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

On Sat, Oct 25, 2008 at 11:23 AM, Bryce Nesbitt <[EMAIL PROTECTED]>wrote:

>
>
> chris smith wrote:
>
> On Sat, Oct 25, 2008 at 5:32 PM, Bryce Nesbitt <[EMAIL PROTECTED]> <[EMAIL 
> PROTECTED]> wrote:
>
>
>  I've got
> tables with pretty disposable data... meaning I want to drop the data...
> but restore empty indexed tables at pg_restore time.
>
>
>  Do a schema-only dump.
> pg_dump --help says use '-s' or '--schema-only'.
>
>
>  Ooops, I was unclear.  I want most of the data!  There are just a few
> tables that I'd prefer be empty (truncated) in the restored database.  Most
> of the tables (and there are lots) are valuable.
>
> Could I  dump --schema-only, dump full, dump the toc, comment out the
> tables from the toc, restore the --schema-only, then restore the dump (minus
> the contents of the unwanted tables)?
>
>