在我的数据库中,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/