postgresql - 确定真空后的自由空间

标签 postgresql monitoring postgresql-9.2

在 PostgreSQL 9.2 中,有没有办法确定数据库中的可用空间量?更具体地说,在当前与 DB 关联的磁盘空间增加之前可以使用的近似空间量(由 pg_database_size() 报告)。

想象一下有一个小数据库,比如 10gb,用户已经删除了其中 1/2 的条目。即使运行了 vacuum 之后,空间也没有返回到文件系统(由于空间限制,vacuum full 是不可能的)。我想了解的是,在删除 1/2 的条目后,现在大约有多少空间被视为“可用”。

最佳答案

这很复杂。没有数据库范围的可用空间池。

在一张表中通过删除/清理获得的可用空间只能用于同一张表。

找到可用空间的一个很好的起点是 this page

关于postgresql - 确定真空后的自由空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20520515/

相关文章:

database - PostgreSQL 在不动态编写 SQL 的情况下执行多个动态 WHERE 条件

sql - 如何以良好的性能查询多个 COUNT(*)

postgresql - PostgreSQL 如何执行查询?

postgresql - 向后索引扫描与索引扫描

postgresql - 使用 Sinatra + DataMapper + Postgres + Heroku 部署一个简单的测试应用程序返回 : Installing do_sqlite3 (0. 10.7) 错误

java - 从数据库中删除一行有什么问题?

go - 普罗米修斯过去的指标在目标节点重新启动时未显示

linux - 如何在 Linux 中监控一个进程的 CPU、内存和时间

postgresql - 如何使用 pgFouine 按用户过滤日志?

sql - PostgreSQL 查找周围的值