阅读 Postgresql 文档后,我们发现它值得推荐每天运行 Vacuum 任务:
我们建议经常(至少每晚)清理活跃的生产数据库,以删除死行。
尽管如此,我们也在考虑每天运行重新索引任务,但我们担心这样做可能带来的影响(例如,由于每天重新索引,数据库大小可能会增加)
您多久在数据库中运行一次 Vacuum 任务?
您多久在数据库中运行一次重新索引任务?
重新索引数据库时我们需要考虑什么(它会带来什么样的负面后果?)
答案1
您多久在数据库中运行一次 Vacuum 任务?
一直使用autovacuum=on
以及每周使用vacuumdb -avz
将输出记录到文件。
您多久在数据库中运行一次重新索引任务?
仅在需要时。若要检查是否需要,请参阅 ->http://bucardo.org/check_postgres/check_postgres.pl.html#bloat,http://wiki.postgresql.org/wiki/Show_database_bloat
重新索引数据库时我们需要考虑什么(它会带来什么样的负面后果?)
不需要的 I/O,不需要的锁定。