如何判断Postgres 9.x中的 autovacuum守护程序是否正在运行并维护数据库集群?
最佳答案
PostgreSQL 9.3
确定自动真空是否正在运行
这特定于UNIX上的Postgres 9.3。
对于Windows,请参阅此question。
查询Postgres系统表
SELECT
schemaname, relname,
last_vacuum, last_autovacuum,
vacuum_count, autovacuum_count -- not available on 9.0 and earlier
FROM pg_stat_user_tables;
Grep系统进程状态
$ ps -axww | grep autovacuum
24352 ?? Ss 1:05.33 postgres: autovacuum launcher process (postgres)
Grep Postgres日志
# grep autovacuum /var/log/postgresql
LOG: autovacuum launcher started
LOG: autovacuum launcher shutting down
如果您想了解更多有关自动真空 Activity 的信息,请将
log_min_messages
设置为DEBUG1..DEBUG5
。 SQL命令VACUUM VERBOSE
将在日志级别INFO
输出信息。关于Autovacuum守护程序,Posgres文档指出:
也可以看看: