47得票8回答
PostgreSQL - 如何在事务块外部的代码中运行VACUUM?

我正在使用Python和psycopg2,尝试在每日插入数千行后运行完整的VACUUM。但问题是当我尝试在我的代码中运行VACUUM命令时,会出现以下错误:psycopg2.InternalError: VACUUM cannot run inside a transaction block ...

45得票5回答
如何清理SQLite数据库?

我想知道如何清理sqlite数据库。 我尝试了从命令提示符中使用手动VACUUM命令来清理整个数据库: $sqlite3 database_name "VACUUM;"; 但是它报错了:near "database_name": syntax error. 还有自动清理功能:PRAGMA au...

43得票5回答
什么是数据库清理(vacuum)?

正如这个Firefox漏洞所提到的,清理数据库的操作是什么意思?所有现代数据库软件都支持这个操作吗,还是只有某些软件支持?

40得票1回答
Postgres 9.4中进行完全清空后,我需要重新索引吗?

我正在使用Postgres 9.4。 我刚刚运行了vacuum full。我阅读了vacuum和vacuum full之间的差异,并认真考虑是否应该运行vacuum或vacuum full。据我所知,我需要运行vacuum full,我的数据库大小从48 GB降至24 GB。 在运行vac...

35得票2回答
为什么与PostgreSQL相比,Mysql不需要使用真空?

我比较熟悉PostgreSQL而非MySQL。曾经在PostgreSQL数据库中遇到过Wraparound Id失败的问题,后来理解了在数据库中进行清理(vacuuming)操作的重要性。实际上,这是一项很繁琐的工作,需要做大量的额外处理(特别是对于旧版本7.4.3),但几个月前已更新至自动清...

29得票2回答
如何确定Postgres表的统计信息是否最新?

在pgAdmin中,当表格的统计信息过时时,它会提示: 建议运行VACUUM 表模式.表中的预估行数与实际行数有很大偏差。您应该在此表上运行VACUUM ANALYZE。 我已经使用pgAdmin 3和Postgres 8.4.4进行了测试,并关闭了自动清理功能。每当我点...

24得票2回答
刷新物化视图“CONCURRENTLY”会导致表膨胀。

在PostgreSQL 9.5中,我决定创建一个名为“effects”的物化视图,并安排每小时并发刷新,因为我希望它始终可用: REFRESH MATERIALIZED VIEW CONCURRENTLY effects; 一开始一切正常,我的物化视图在进行刷新时磁盘空间的使用量保持相对稳定...

21得票1回答
数据库表的大小没有成比例地减小

我正在使用一个 PostgreSQL 8.4.13 数据库。 最近,我在一张表中有大约8650万条记录。我删除了几乎所有的记录 - 只剩下5000条记录。我运行了reindex 和vacuum analyze 在删除了这些行后,我仍然发现表占用了较大的磁盘空间:jbossql=> SEL...

19得票2回答
PostgreSQL:如何启用自动清理?

如何在PostgreSQL中启用自动清理?我了解它的目的,只是找不到有关如何启用它的简单答案。

17得票2回答
如何高效地在Postgres中对表进行Vacuum分析

我在Postgres上运行一个巨大的查询,其中一个联接表总是进行顺序扫描。约束列上有索引,但Postgres没有使用它。我运行了VACUUM ANALYZE,现在Postgres查询计划指示正在使用索引扫描。 我的问题是,运行VACUUM ANALYZE的最有效方式是什么?它是否锁定了表?如果...