Обсуждение: Restoring to a different tablespace

Поиск
Список
Период
Сортировка

Restoring to a different tablespace

От
"Joeseph Blowseph"
Дата:
I ran a default windows installation and consequently the public schema uses
my c: drive. There's not much space on there and I need to restore a fairly
large backup that was taken on a different machine.

I've created a tablespace with a datafile on my f: drive and configured a
user to have that tablespace as its default. The user is the same name as
the user which owned the tables on the original database. If I log on as
that user and create a table, the table is created in the new tablespace as
expected.

However, if I run a restore, connecting as the new user,  the tables are
owned by the user as expected, but they are going to the default tablespace
and blowing my C: filesystem.  Can anyone advise how to import the tables
into the new tablespace? I've tried various combinations of parameters for
the restore, including the -o option but so far haven't managed to crack it.

Thanks,
JB.

_________________________________________________________________
Be the first to hear what's new at MSN - sign up to our free newsletters!
http://www.msn.co.uk/newsletters


Re: Restoring to a different tablespace

От
Tom Lane
Дата:
"Joeseph Blowseph" <joseph_blowseph@hotmail.com> writes:
> However, if I run a restore, connecting as the new user,  the tables are
> owned by the user as expected, but they are going to the default tablespace
> and blowing my C: filesystem.

If that's a pg_dump dump, it very likely includes commands to specify
which tablespace the tables should go into.  You'll need to modify the
dump file to override that.

It might work to create a new database with the desired tablespace as
its default, and restore into that database.

            regards, tom lane