1

我正在使用 postgresql 14.1,并且我使用 parititons 为某些表重新创建了我的实时数据库。

既然我这样做了,我可以在服务器不运行时创建索引,但是当它运行时我只能创建 usingconcurrently但不幸的是,当我尝试同时创建索引时出现错误。

运行这个:

create index concurrently foo  on foo_table(col1,col2,col3));

提供错误:

ERROR:  cannot create index on partitioned table "foo_table" concurrently

现在它是一个实时服务器,我不能同时创建索引,我需要创建一些索引以提高性能。任何想法如何做到这一点?

谢谢

4

1 回答 1

1

没问题。首先,用于CREATE INDEX CONCURRENTLY在每个分区上创建索引。然后用于CREATE INDEX在分区表上创建索引。那会很快,并且分区上的索引将成为索引的分区。

于 2022-02-02T15:24:14.683 回答