在我的数据库中,PostgreSQL 11.2上有一个名为“record_partitioned”的分区表。
我想把它的表空间改成一个新的表空间‘fast_ssd’,这样这个表中所有新的dervied表都在‘fast_ssd’表空间中。
当我试图将表空间改为“快速ssd”时。

alter table record_partitioned set tablespace fast_ssd;

我懂了:
更改表
但似乎什么都没发生!我这样检查表空间:
SELECT tablespace,tablename FROM pg_tables where tablename='record_partitioned';

输出为:
 tablespace |     tablename
------------+--------------------
            | record_partitioned

表空间不变。

最佳答案

对于已分区的表,无法执行此操作。无论何时创建分区,都必须添加显式TABLESPACE子句。
另一种方法是设置default_tablespace参数,但这也会影响所有其他表。

关于postgresql - 在Postgres中更改分区表的表空间,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57770268/

10-13 05:06