Guillaume Drolet wrote: > Digging a little more, I found that not only sequences were not moved but > also many tables in > pg_catalog are still in my old tablespace. This is expected since the query > in the SQL files I used to > move the tables and indexes had a WHERE clause like this: > > SELECT ' ALTER TABLE ' || schemaname || '.' || tablename || ' SET TABLESPACE > pg_default;' > FROM pg_tables > WHERE schemaname NOT IN ('pg_catalog', 'information_schema'); > > So I tried removing the WHERE clause and running the script again: > psql -U postgres -d mydb < move_tables_to_pg_default.sql | findstr /R > /C:"[ALTER]" | psql -d mydb -U > postgres > > I got many errors like this one: > ERROR: permission denied: "pg_event_trigger" is a system catalog > > If I can't move tables from pg_catalog, how will I be able to drop that > tablespace I don't want to use > anymore? > > I am thinking that maybe using "ALTER DATABASE mydb SET TABLESPACE > pg_default;" instead would take > care of all this, no? > > But when I tried it last week, I got a message like: some relations already > in target tablespace... > > Any help will be much appreciated.
If you want to move a whole database to a different tablespace (the only reason I can think of for doing what you are trying to so), use the command ALTER DATABASE ... SET TABLESPACE ... Yours, Laurenz Albe -- Sent via pgsql-general mailing list (pgsql-general@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general