我有几个 postgres 8.3 数据库,它们显示出缺乏吸尘的症状。
我检查了配置,它们处于打开自动吸尘器的默认状态。此外,当我启动数据库时,我在我的 postgres 日志中看到“autovacuum 启动器已启动”。
问题是,我从未真正看到真空运行。我也从未在日志中看到任何关于真空发生的内容(我应该看到什么吗?)
那么如何判断吸尘器是否工作?例如,有没有办法查看最后一次真空完成的时间?更好的是,是否有一些文档有人可以指出我对该问题的答案?
谢谢!
我有几个 postgres 8.3 数据库,它们显示出缺乏吸尘的症状。
我检查了配置,它们处于打开自动吸尘器的默认状态。此外,当我启动数据库时,我在我的 postgres 日志中看到“autovacuum 启动器已启动”。
问题是,我从未真正看到真空运行。我也从未在日志中看到任何关于真空发生的内容(我应该看到什么吗?)
那么如何判断吸尘器是否工作?例如,有没有办法查看最后一次真空完成的时间?更好的是,是否有一些文档有人可以指出我对该问题的答案?
谢谢!
pg_stat_user_tables 有last_autovacuum和last_autoanalyze列。每当它做某事时,它们都会被更新。
在更高的层次上,PgSnap是你的朋友 ;-)
这是最后一次真空报告的例子
谷歌是你的朋友,www.postgresql.org 更棒:
18.9。自动吸尘
log_autovacuum_min_duration(整数)
如果 autovacuum 执行的每个操作至少运行了指定的毫秒数,则记录该操作。将此设置为零会记录所有 autovacuum 操作。减一(默认值)禁用记录 autovacuum 操作。例如,如果您将其设置为 250 毫秒,那么所有运行 250 毫秒或更长时间的自动真空吸尘器和分析都会被记录下来。启用此参数有助于跟踪 autovacuum 活动。此设置只能在 postgresql.conf 文件或服务器命令行中设置。