【发布时间】:2017-11-07 08:28:09
【问题描述】:
我的数据库服务器上的磁盘空间不足。我从未执行过vacuum full,我希望vacuum full 会释放一些空间。
你之前有没有运行过vacuum full,如果释放了空间,是多少?
【问题讨论】:
-
您可能想看看像pg_squeeze 或pg_repack 这样的工具。
标签: postgresql postgresql-9.3 vacuum
我的数据库服务器上的磁盘空间不足。我从未执行过vacuum full,我希望vacuum full 会释放一些空间。
你之前有没有运行过vacuum full,如果释放了空间,是多少?
【问题讨论】:
标签: postgresql postgresql-9.3 vacuum
物理上的vacuum full 会创建一个表副本并破坏一个旧表。由此得出几个结论:
https://www.postgresql.org/docs/current/static/sql-vacuum.html
此方法还需要额外的磁盘空间,因为它会写入一个新副本 并且在操作完成之前不会释放旧副本 完全的。通常这应该只在大量的情况下使用 需要从表中回收空间。
您可以通过恢复数据的副本来确定数据的大小,例如pg_dump/pg_restore
【讨论】:
pg_dump/restore db 某处。或单独用于表格create table as select*。