Re: pg_dump & table space

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Luca Ferrari <fluca1978(at)infinito(dot)it>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: pg_dump & table space
Date: 2009-06-01 14:27:03
Message-ID: 16944.1243866423@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Luca Ferrari <fluca1978(at)infinito(dot)it> writes:
> is there a way to dump an entire database which has a specific table space
> without having in the sql file any reference to the tablespace? This can be
> useful when moving the database from one machine to another (that does not use
> the tablespace). Any way to achieve that with pg_dump?

Recent versions have

--no-tablespaces do not dump tablespace assignments

However, this is really just cosmetic, as the dump is set up like this:

SET default_tablespace = whatever;
CREATE TABLE whichever(...);

If tablespace 'whatever' doesn't exist, you'll get an error on the SET
but the CREATE will succeed anyway. (I guess this only works cleanly
if the destination machine has *none* of the source's tablespaces,
else things might get assigned to unexpected tablespaces. But it's
definitely possible to restore a dump without having the same
tablespaces.)

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Shak 2009-06-01 15:18:36 Using results from RETURNING
Previous Message Tom Lane 2009-06-01 14:20:17 Re: Foreign key verification trigger conditions