应该将autovacuum设置为on?

时间:2013-02-12 18:42:50

标签: postgresql postgresql-9.1

我在amazon ec2 / ebs上运行了一个Postgresql 9.1 db。数据库开始变慢。我们有一个包含1m记录的表,似乎正在减慢一切。在查看postgres配置时,我们注意到autovacum设置被注释掉了。

解决此问题的正确方法是什么。 autovacum应该设置为on?我们是否应该在设定的时间间隔内有一些automacum的cron?

此外,任何有关如何使用产品数据库的想法/链接,如何知道您是否需要真空,将不胜感激。我正在学习。感谢

2 个答案:

答案 0 :(得分:6)

autovacuum应运行的频率取决于数据库修改记录的频率。如果您的数据库经常进行删除和更新,那么您将需要经常运行autovacuum。如果您的数据库/模式只是添加到数据库并且很少进行更新或删除,那么您将不需要经常运行它。

Autovacuum仅用于回收数据库不再使用的内存/存储空间。

答案 1 :(得分:3)

  1. 打开autovacuum
  2. psql:VACUUM VERBOSE分析表格。并阅读输出。
  3. 一般来说 - 你想要启用autovacuum,有时你可能想要手动运行VACUUM,如果你发现任何错误的话。