我写了一个脚本来备份一个 postgresql 使用COPY
然后删除这些记录。我pg_relation_size
在删除之前和之后都使用过。
- pg_relation_size
- 删除
- 真空分析
- pg_relation_size
但两者都pg_relation_size
显示相同的结果。这是否意味着VACUUM ANALYZE
没有帮助?
我写了一个脚本来备份一个 postgresql 使用COPY
然后删除这些记录。我pg_relation_size
在删除之前和之后都使用过。
但两者都pg_relation_size
显示相同的结果。这是否意味着VACUUM ANALYZE
没有帮助?
VACUUM 不一定使未使用的空间可用于文件系统,它只是使块可重新用于进一步的 INSERT(或 UPDATE)。
如果我没记错的话,唯一的方法也是主动减小文件系统的大小
VACUUM FULL
,但要注意它需要对表进行独占锁定。您是否希望该表不会获得任何新行或更新?因为如果它将获得新行,那么如果由于新行的到来稍后它们将再次增加,那么现在尝试物理地收缩文件就没有意义了。
a_horse_with_no_name 回答了原始问题,让我添加一个链接 - 如果你想从表中删除膨胀,你可能会发现这个信息。