我已经找到了一百万个有关如何设置Autovacuum的配置设置的示例,但似乎找不到如何列出当前配置的例子。

Postgres 9.1是我最感兴趣的版本。 br />

#1 楼

对于常规设置,请使用:

select *
from pg_settings 
where name like '%autovacuum%'


对于表特定设置,请检查pg_class中的reloptions列: br />您可能希望将其连接到pg_namespace,以将其限制为特定的模式。需要在隐藏的col pg_namespace.oid(添加9.3+)上进行连接的地方。

select relname, reloptions
from pg_class


评论


替代查询:从pg_settings中选择*,其中类别类似于“ Autovacuum”

–JoãoPortela
14年4月14日在11:52

参见postgresql.org/docs/9.6/static/catalog-pg-namespace.html

–尼克
17年2月15日在18:13

像“ autovacuum%”这样的错误是错误的,应该像“%autovacuum%”一样,不是所有的autovacuum设置都以单词autovacuum开头。

– Giacomo Alzetta
19年5月5日在9:58

#2 楼

如果要查看特定表的真空设置:

SELECT relname, reloptions FROM pg_class WHERE relname='tablename';

常规真空设置可以在postgresql.conf中看到。

评论


我只是试过了,但它显示该字段为空?该领域是自动真空

–路飞杜德
20年6月26日在13:59

@Luffydude字段是自动清理的?你能说清楚一点吗?无论如何,我猜测如果reloptions为null,则意味着您正在使用该表的默认真空设置(在postgresql.conf中定义)。

– colimarco
20年11月2日,13:41