Thread: Moving database and schema to a new tablespace
Hi, I'm looking to move a database by using ALTER DATABASE $DB SET TABLESPACE and i'd also like to move a schema over to thesame new tablespace, googling around, it looks like there was a an ALTER SCHEMA $SCHEMA SET TABLESPACE command in thepast, but apparently no longer. I'm using Postgres 9, can anyone confirm if this is still possible, and if not, howI can move the schema over ? Thanks in advance Richard
On Thu, 2011-09-08 at 19:09 +0100, Richard Shaw wrote: > Hi, > > I'm looking to move a database by using ALTER DATABASE $DB SET TABLESPACE and i'd also like to move a schema over to thesame new tablespace, googling around, it looks like there was a an ALTER SCHEMA $SCHEMA SET TABLESPACE command in thepast, but apparently no longer. I'm using Postgres 9, can anyone confirm if this is still possible, and if not, howI can move the schema over ? > ALTER SCHEMA... SET TABLESPACE never existed in PostgreSQL. As you're using PostgreSQL 9, you can use the DO command to do something like this. You need to find every table in the schema, and launch ALTER TABLE... SET TABLESPACE to them. And then do the same with indexes. -- Guillaume http://blog.guillaume.lelarge.info http://www.dalibo.com
>> I'm looking to move a database by using ALTER DATABASE $DB SET TABLESPACE and i'd also like to move a schema over to the same new tablespace, googling around, it looks like there was a an ALTER SCHEMA $SCHEMA SET TABLESPACE command in the past, but apparently no longer. I'm using Postgres 9, can anyone confirm if this is still possible, and if not, how I can move the schema over ?
>>
>ALTER SCHEMA... SET TABLESPACE never existed in PostgreSQL.
>As you're using PostgreSQL 9, you can use the DO command to do something
>like this. You need to find every table in the schema, and launch ALTER
>TABLE... SET TABLESPACE to them. And then do the same with indexes.
Hello,
Maybe you are looking after this ?
http://archives.postgresql.org/pgsql-performance/2006-08/msg00369.php
otherwise here is a howto foe moving tables and indexes one by one:
http://blog.lodeblomme.be/2008/03/15/move-a-postgresql-database-to-a-different-tablespace/
HTH,
Marc Mamin